域名系统DNS
互联网域名系统DNS设计为在线分布式数据库,采用客户端-服务器方式。 在DNS中,大多数名字都是本地进行解析
域名到IP地址的解析由分散在互联网上的域名服务器风之池共同进行。
解析步骤为1.APP应用进程调用解析程序,成为DNS的客户端,将要解析的域名放入DNS请求消息中,以UDP数据报发送给本地域名服务器。
2 .接收到请求的服务器将IP地址放入消息中返回,APP应用进程在获得IP地址后继续通信。
3 .如果本地服务器没有响应,则此域名服务器将临时成为另一个DNS的客户,并发送查询请求直到找到它。
互联网的域名结构
DNS规定每个标签不超过63个字符,不区分大小写,并且由多个标签组成的完整域名最多不超过255个字符。 (域名只能是逻辑概念,并不表示计算机所在的物理。)
顶级域名分为三类。
1 .国家顶级域名nTLD:cn-中国、us-美国、uk-英国.
2 .通用顶级域名gTLD:com-公司企业、net-互联网服务机构、org-非营利组织、int-国际组织、edu-教育机构、gov-政府机构、mil-军事部门.
3 .基础设施域名: arpa (为了解析反向域名,也称为反向域名() ) ) )。
二级域名(中国)。
1 .类别域名: ac-科研机构、com-企业、edu-教育机构、gov-政府、mil-国防机构、net-网络提供机构、org-非营利机构
2 .行政区域名: bj-北京市、js-江苏
所有我国互联网发展的现状和规定都可以在中国互联网信息中心CNNIC上找到
网域名称伺服器
根域名服务器:我知道所有顶级域名服务器的域名和IP地址。 无法解析的域名可以请求根域名服务器。 域名为a.root servers.net-- m.root servers.net (全球只有13个域名服务器,但不仅仅只有13个)
33558www.Sina.com/(TLD ) :管理顶级域名服务器中注册的所有次域名
33558www.Sina.com/:1:负责单个区域的域名解析(区域中的节点必须相互连接) )。
顶级域名服务器:此级别不属于图6-3的结构,此类域名服务器也是默认域名服务器。
为了提高可靠性,域名服务器将数据复制并存储在几个域名中。 其中一个为权限域名服务器,其他为 本地域名服务器。
主机到本地域名服务的域名查询通常需要主域名服务器
本地域名服务器要查询根域名服务器,通常需要访问辅助域名服务器
文件传输协议
FTP协议(基于TCP )
FTP提供了使用TCP可靠运输服务进行文件传输的基本功能。 FT[的主要功能是减少或消除在不同操作系统上处理文件的不兼容性。
FTP的服务器进程分为两种:主进程(负责接受新请求)、从进程(几个负责单个请求)
主流程的作业步骤如下。
1 .打开熟悉的端口(21 ),允许客户端进程连接
2.等待客户进程的连接请求3.启动从属进程处理客户进程发送的请求,从属进程对客户进程的请求处理完毕后即终止,但从属进程在运行期间根据需求可能创建一些子进程
4.回到等待状态,继续接受其他客户进程发送的请求,主进程和从属进程是并发的
FTP工作时需要建立两个TCP连接:
1.控制链接
2.数据连接(传输文件)
简单文件传送协议TFTP
优点: 1.可用于UDP环境
2.TFTP代码占用的内存较小
特点: 1.每次传送的数据报文中只有512字节数据(最后一次可以不足512字节)
2.数据报文按序编号,从1开始
3.支持ASCII码或二进制传送
4.可对文件进行读或写
5.使用很简单的首部
远程终端协议TELNET(远程控制协议)
基于TCP,又称终端仿真协议
万维网WWW
万维网是一个大规模的、联机式的信息储藏所(分布式)
统一资源定位符URL
URL用来表示从互联网上获得的资源位置和访问这些资源的方法,URL给资源位置提供一种抽象的标识方法。
URL相当于一个文件名在网络范围的扩展
协议:使用何种协议获取该万维网文档,一般是http,其次是ftp
主机:指出此文档在那台主机上
端口和路径有时可以省略
使用HTTP的URL
HTTP的默认端口号为80,可以省略,若再省略<路径>选项,URL就指向互联网上某个主页。
超文本传送协议HTTP
HTTP的操作过程
HTTP是面向事务的应用层协议,它是万维网上能可靠的交换文件的重要基础。
HTTP基于TCP协议,网点会有一个服务器进程监听80端口,客户端和服务器建立联系后HTTP页面的交互都通过此TCP进行传输,直至TCP连接被释放
HTTP使用了TCP来保证数据的可靠传输。HTTP不必考虑数据在传输过程中丢失,但是HTTP协议本身是无连接的(在双方交换HTTP报文之间,并不需要建立HTTP连接)
HTTP是无状态的,服务器并不会记录客户端的访问数据
代理服务器
代理服务器将最近的一些请求和响应暂存在本地服务器,又称万维网高速缓存。
HTTP的报文格式
HTTP的报文分两类:请求报文、响应报文
HTTP是面向文本的,报文中每个字段都是一些ASCII码串,每段的长度都是不确定的
开始行:用于区分报文类型(请求还是响应)
首部行:说明给浏览器、服务器或一些报文主体的信息
实体主体:请求报文一般不实用这个字段,而响应报文中也可能没有这个字段
请求报文的“请求行”(第一行)仅有三个内容:方法,请求资源的URL,以及HTTP版本
在服务器上存放用户信息(Cookie)
在用户A浏览网页时,网站服务器为A生成一个唯一识别码,当收到A的响应时,浏览器会在它管理的特定Cookie文件中添加一行(包括服务器主机名和Set-Cookie的识别码),每次提交申请的时候,浏览器会从Cookie文件中取出这个网站的识别码添加刀HTTP报文的Cookie首部中。
于是网站就可以追踪用户A在该网站的活动了,服务器并不需要知道这个用户的真实信息