Internet协议(上):https://developer.aliyun.com/article/1459754
移动IP协议
移动IP技术的功能实体
移动IP定义了三个功能实体:移动节点,归属代理和外区代理
- 移动节点:当节点从一条链路切换到另外一条链路上时仍能够保持所有正在进行通信的移动主机。他有两个IP地址:一个是归属地址,用来标识TCP连接的永久地址;另一个是转交地址,是当移动节点漫游到其他子网时获得的供IP包选路使用的临时地址。转交地址可以由外地代理提供,称为代理转交地址。
- 归属代理:移动节点本地网络上的路由器。它由一个端口与移动节点家乡链路连接,同时保存移动节点的位置信息。当移动节点离开归属网络时,它能够将发往移动节点的数据包传给移动节点。
- 外区代理:移动节点当前连接到外地网络上的一个路由器,其作用是为移动节点提供路由服务。并且对经归属代理封装后发送给移动节点的数据报进行解封装,然后转发给移动节点。
移动IP技术中的几个关键技术
- 隧道技术
- 代理搜索
- 注册
QoS支持
QoS概述
服务质量QoS是服务性能的总效果,此效果决定了一个用户对服务的满意程度。因此在最简单的意义上,有服务质量的服务就是能够满足用户的应用需求的服务。
在Internet上为用户提供高质量的QoS必须解决以下几个问题:
- QoS的分类与定义
- 准入控制和协商
- 资源预约
- 资源调度和管理
QoS性能指标
服务质量可用若干基本性能指标来描述,包括可用性、差错率、响应时间、吞吐量、分组丢失率、连接建立时间、故障检测和改正时间等
主要的QoS技术
当前主要的QoS技术有:继承服务、资源预留协议、区分业务,多协议标记转换,流量工程,QoS路由等
传输层协议TCP和UDP
TCP协议
tcp是面向连接的协议,提供可靠的,全双工的,面向字节流的,端到端的服务。
tcp的连接是一对端点的连接,为了清晰的表明这条连接的源地址和目的地址,给每一个端口分配一个套接字(socket)或者插口。虽然每台主机对端口号独立编码,但是IP地址是唯一的,和IP地址绑定之后所形成的插口就是唯一的。
套接字=IP地址:端口号
端口号对应主机中的一个应用进程,编程语言通常用port表示。由此可得
TCP连接::=(socket1, socket2)=({IP1:port1}{IP2:port2})
TCP建立与释放连接
TCP建立连接机制:TCP使用三次握手来建立连接,大大的增强了可靠性。如防止已经失效的连接请求报文到达被请求方,产生错误造成资源浪费。
TCP定时管理机制
重传机制是保证TCP可靠性的重要措施。TCP每次发送一个报文段,就对这个报文设置一次计时器。只要计时器设置的重传时间到了但是还没有收到确认,就要重传这一个报文段。超时重传时间设置的长短,恰当与否关系到网络的工作效率。如果设置的太短,会引起很多报文段的重传,增大网络的负荷;如果设置的太长,则会增大网络的空闲时间,降低网络的传输效率。
具体步骤如下:
首先计算出来第一个RTT。然后把第一个RTT的值设置为RTTs的初始值。以后再计算新的RTTs采用如下公式
其中α的值常用1/8。计算RTO的公式为:
RTTD的初始值为RTT样本值的一般,以后再计算RTTD时采用公式:
其中β常取值1/4。
TCP拥塞控制机制
传输层的主要任务是保证端到端的可靠的传输。端到端之间跨越的是若干个网段。所以要在保证网络高效传输,必须保障网络通畅,不然就会发生拥塞现象。因为一旦网络发生拥塞,不但网络的传输速度会降低,而且还会导致数据的丢失和重传。
TCP永爱控制方法主要有四种:慢开始、拥塞避免、快重传和快恢复。
- 慢开始和拥塞避免:
- 快重传和快恢复:
- 随机早期检测RED:
无线TCP
由于移动计算机环境存在着BER高、带宽低、移动性以及能量有限等特点,使得原本为固定主机、有线网络设计的TCP协议在这种环境下出现了很多不适应的问题。即使在拥塞控制机制不断改进的情况下,TCP在无线网络中的传输性能仍无根本提高。针对无线网络的TCP方案大致可以划分为三类
- 端到端方案
- 分段连接方案
- 数据链路层方案
UDP协议
UDP只在IP的数据报服务之上增加了很少一点的功能,即端口的功能和差错检测的功能。虽然UDP用户数据包只能提供不可靠的交付,但是UDP在某些方面具有其特殊的优点:
- 发送之前不需要建立连接
- UDP的主机不需要位置复杂的连接状态表
- UDP用户数据报只有8个字节的首部开销
- 网络出现的拥塞不会使得源主机的发送速率降低
应用层协议
域名系统DNS
域名系统DNS的功能是把Internet中的主机域名解析为对应的IP地址。域名系统DNS是一个联机分布式数据库系统。工作方式采用客户服务器方式。域名服务器是运行域名服务器程序的机器
- DNS名字空间:目前,依尼特网的命名方法是层次树状结构。采用这种命名方法,任何一个连接在因特网上的主机或者路由器都有一个唯一的层次结构的名字,即域名。域是名字空间中的一个可被管理的划分。域可继续划分为子域,如二级域、三级域等等。域名的结构由若干个分量组成,各个分量之间用点隔开;各个分量代表不同级别的域名。
域名服务器
可以把域名服务器分为根域名服务器、顶级域名服务器、权限域名服务器和本地域名服务器四种不同类型
- 根域名服务器:根域名服务器是最高层次的域名服务器。每一个根域名服务器都要存有所有顶级域名服务器的IP地址和域名。
- 顶级域名服务器:顶级域名服务器负责管理在本地顶级域名服务器上注册的所有二级域名。当收到DNS查询请求时,能够将其管辖的二级域名转换为该二级域名的IP地址。或者是下一步应该找寻的域名服务器的IP地址。
- 权限域名服务器:DNS采用分区的办法来设置域名服务器。一个服务器所管辖的范围称为区的范围小于或者等于域的大小。各个单位可以根据自己单位的情况来换分区的范围。每一个区都设置有服务器,这个服务器的叫权限服务,它负责将其关系区内的主机域名转换为该主机的IP地址,在其上保存有所有管辖区内的所有主机域名到IP地址的映射。
- 本地域名服务器:也称为默认域名服务器。当一个主机发出DNS查询报文时,这个查询报文就首先被送往该主机的本地域名服务器。
域名解析
域名解析过程的要点:当某个应用进程需要把某个主机的域名解析对应的IP地址时,它将调用解析程序,称为DNS的客户方,并把要解析的主机域名放在DNS请求报文中,然后把UDP用户数据报将其发往本地域名服务器。本地域名服务器对其进行对应查询,如果查找成功,就将结果放入DNS回答报文中,同样使用UDP用户数据报将返回给请求方。
需要再次强调的是各种服务器之间的查询都是以客户端服务器方式进行的,在域名解析过程中,本地域名服务器采用递归查询和迭代查询两种查询方式。
电子邮件协议
电子邮件是因特网上使用最多的和最受用户欢迎的一种应用。电子邮件将邮件发送到ISP的邮件服务器上,并放在其中的收信人邮箱中,收传人可随时上网到ISP的邮件服务器进行读取。电子邮件不仅使用方便,而且还具有传递迅速和费用低廉等优点。现在电子邮件不仅可以传送文字信息,还可以附上声音和图像。
接收协议
POP3
POP3也是用客户服务器的工作模式。在接收邮件的用户PC机中必须运行POP客户程序,而在用户所连接的ISP的邮件服务器中则运行POP3服务器程序。POP3服务器具有身份鉴别功能,用户只有输入鉴别信息之后才允许对邮箱进行读取,另外它还具有从服务器读取邮件并且存放到本地机器上的以及对邮件删除、备份等其他操作功能。
POP3也是用TCP协议,对邮件进行传输
IMAP
IMAP是一个连接协议。当用户PC机器上的IMAP客户程序打开IMAP服务器的邮箱时,用户就可以看到邮件的首部。用户打开某个邮件时,那个邮件才传到用户的计算机上。所以用户可以在不同的地方使用不同的计算机反复阅读自己的邮件,知道用户发出删除邮件的命令,IMAP服务器邮箱中的邮件会一直保存着
文件传输协议FTP
FTP主要功能是减少或者消除在不同的操作系统下处理文件的不兼容性。FTP的主要作用就是让用户连接上一个远程计算机,查看远程计算机上有哪些文件,然后把文件从远程计算机拷贝到本地计算机或者把本地计算机传输到远程计算机上去。
FTP支持两种模式,一种方式叫做Standard,一种是Passive。Standard模式FTP的客户端发送PORT命令到FTP服务器。Passive模式下FTP客户端发送PASV命令到FTPServer.
远程登录协议Telnet
Telnet是因特网的登录和仿真程序。基本功能是允许用户登录进入远程主机系统。目的是提供一个相对通用的,双向的,面向八位字节的通信机制。一个Telnet连接就是一个用来传输带有Telnet控制信息数据的TCP的连接。
- 基本服务
Telnet定义一个网络虚拟终端为远地系统提供一个标准接口。客户机程序不必详细了解远地系统,他们只需构造使用标准接口程序;Telnet包括一个允许客户机和服务器协商选项的机制,而且它还提供一组标准选项;Telnet对称处理连接的两端,即Telnet不强迫客户机从键盘输入,也不强迫客户机在屏幕上显示输出。
WEB应用和HTTP协议
Web资源组织方式与URL
WWW是一种分布式的超媒体系统,它是超文本系统的扩充。一个超文本由多个信息源连接成。利用一个连接可使用户找到另一个文档。这些文档可以位于世界上任何一个接在因特网上的超文本系统中。超文本是万维网的基础。WWW基于客户/服务器模式,它改进了传统的客户/服务器计算模型,将原来客户端一侧的应用程序模块与用户界面分开,并将应用程序模块放到服务器上,形成基于web浏览器的用户界面、应用程序和服务程序等三个部分。
WWW使用统一的资源定位符来标识分布在整个因特网上的文档,所谓统一资源定位符就是用于完整地描述在因特网上网页和其他资源的地址的一种标识方法。因特网上的每一个网页都具有唯一的名称标识,通常称之为URL地址。
URL采用相同的基本语法,无论寻址哪种特定飞行的资源或描述通过哪种机制获取该资源。语法如下:
protocol:指定使用的传输协议,最常用的是http协议
hostname:是指存放资源的服务器的域名系统主机名或者IP地址
prot:整数,可选,省略时使用方案的默认端口,各种传输协议都有默认端口号,如HTTP的默认端口号为80
path:由零个或者多个/分开的字符串,一般用来表示主机上的目录或者文件地址
:parameters:可选,这是用于置顶特殊参数的可选项
? query:可选,用于给动态网页传递参数,可有多个参数用&符号隔开,每个参数名称和值之间用=隔开
fragment:信息片段,字符串,用于置顶网络资源中国的一个片段
Http协议工作原理
为了使超文本的连接能够高效的完成,需要使用http协议来传送一切必须的信息。从层次角度看,http是面向事务的应用层协议,它使用tcp连接进行可靠的传送。http是一个无状态的协议,即服务器向客户机发送被请求的文件时,并不存储任何关于该客户机的状态信息。http协议定义了web客户机是如何向web站点请求web页,以及服务器如何将web页传送给客户机。
Cookie/Session和Web缓存
开发网站设计到页面数据间共享时,常常需要使用某一种方式来持久化数据,持久化数据的方式由很多种,下面我们介绍Cookie、Session、和Cache三种
- Cookie:提供了一种在web应用程序中存储用户特定信息的方法。
- Session:为当前用户会话提供信息。还提供对可用于存储信息的会话范围的缓存访问,以及控制如何管理会话的方法。存储在服务器的内存中,因此在与数据库中存储和检索信息相比,它的执行速度更快。
- Cache:存储与服务器内存中,允许自定义缓存项以及将缓存多长时间。
动态主机配置协议DHCP
动态主机配置协议是一种使网络管理员能够集中管理和分配IP网络地址的通信协议。在IP网络中,每个连接因特网的设备都需要分配唯一的IP地址。DHCP使网络管理员能够从中心节点监控和分配IP地址。当某个计算机移到网络中的其他位置时,能够自动收到新的IP地址。
- DHCP工作过程:DHCP采用客户服务器的工作方式
第一步:DHCP服务器打开UDP67端口,监听请求
第二步:DHCP客户端从端口68利用UDP像服务器发送DHCPDISCOVER报文
第三步:DHCP服务器发送DHCPOFFER报文
第四步:DHCP客户从多个DHCP服务器中选择一个,然后向其发送DHCPREQUEST报文
第五步:DHCP服务器回送DHCPACK,包含分配的IP地址
第六步:租用期过了一般,DHCP客户端发送请求报文DHCPREQUEST要求更新租用期
第七步:DHCP服务器若同意,则发回确认报文DHCPACK,DHCP客户端将获得新的租用期,重新设置计时器
第八步:DHCP服务器若是不同意,则发回DHCPNACK。这时候DHCP必须立即停止使用原来的IP地址,而不需重新申请IP地址(回到步骤2)
第九步:DHCP客户端可以随时终止服务器所提供的租用期,这时只需要向DHCP服务器发送释放报文DHCPRELEASE即可
无限Web协议WAP
WAP特点
- WAP只要求移动电话和WAP代理服务器的支持,而不要求现有的移动通信网络协议做任何的改动,所以WAP能同时适用于多种不同的移动通信系统
- WAP协议堆栈的设计力求使所需带宽最小化,并对各种网络技术和服务提供广泛的支持
- WAP层次结构比较松散,每层的开发独立于其他层,容易引入新的传输协议和服务类型
WAP工作原理
为适应无线设备屏幕小,无线传输带宽小等特殊环境要求,WAP采取了以下措施:
- 使用二进制传输经过高度压缩的数据,并对长延时和中低带宽进行优化
- WAP的会话功能可以处理不连续覆盖的问题,并能自动地在IP不可用时改用其他优化协议来进行各种信息传输
- 使用WML语言编写网页,WAP解决因特网页面不能在移动通信设备商显示的问题
- 运用WML编辑的网页可以在手机的微浏览器上产生按钮、图示等超链接功能,并且可提供信息浏览,数据输入、文本和图像显示、表格显示等功能,大大的减小了在移动设备商浏览网页内容的复杂程度。
- WAP通过加强网络功能来弥补便携式移动设备本身的缺陷,工作时尽可能减少占用移动通信设备的资源
- WAP在应用层上隐藏了GSM的复杂性,给用户提供了类似于普通Web页面的友好性。
- WAP通过使用类似于js的脚本语言WMLScript,来使移动设备先将信息进行处理后再发送给服务器
P2P应用协议
略
代理和NAT
应用层代理
代理处于客户机和服务器之间,对于服务器来说,代理是客户机,代理提出请求,服务器响应;对于客户机来说,代理是服务器,它接收客户机的请求,并将服务器上传来的数据转给客户机
应用层代理工作在TCP/IP模型的应用层之上,它只能用于支持代理的应用层协议
应用层代理的原理是车里隔断通信两端的直接通信,所有的通信必须经过应用层代理转发,访问者任何时候都不能与服务器建立直接的TCP连接,应用层的协议会话过程必须符合代理的安全策略要求。
网络地址转换NAT
因特网IP地址由本地地址和全球地址两类。本地地址仅在机构内部使用,由本机构自行分配,而不需要向因特网的管理机构申请。全球地址顾名思义在全球唯一的,必须向因特网管理机构申请。由于本地地址可以由机构自行分配,在一定程度上缓解了IP地址不足的问题。RFC1918为私有和内部使用的网络预留了31个地址块作为专用地址,也就是本地地址。但是因特网中的所有路由器对目的地址是专用地址的数据报一律不进行转发。这就需要使用网络地址转换。通常由路由器担任IP转换功能,且要在专用网连接到因特网的路由器上安装NAT软件,装有NAT软件的路由器叫NAT路由器,它至少有一个有效的外部全球地址。
NAT有三种类型
- 静态NAT:设置起来最容易,内部网络中的内阁主机都被永久映射成某个全球地址
- 动态NAT:以地址池的方式。地址池中有多个全球地址用来对内部地址进行映射,但不固定绑定
- 端口地址转换PAT:一个外网地址可以和多个内网地址进行映射,同时在该地址上加上一个由NAT设备指定的TCP/UDP的端口号来区分
搜索引擎
搜索引擎是指因特网上专门提供查询服务的一类网站,这些网站通过网络搜索软件或者网站登录等方式,收集因特网上大量的网站页面,经过加工处理后建库,从而能够对用户提出的各种查询作出响应,提供用户所需的信息。它是一个对互联网资源进行搜索整理和分类,并且存储在网络数据库中供用户查询的系统,包括信息搜索、信息分类、用户查询三个部分
搜索引擎工作原理
简单的来说,搜索引擎是通过从互联网上提取的各个网站的信息来建立数据库、检索与用户查询条件最匹配的相关记录,然后按照一定的排列顺序将结果返回给用户。根据搜索引擎提取数据的方法,可将搜索引擎系统分为三大类
- 目录式搜索引擎
- 机器人搜索引擎
- 元搜索引擎