网络通讯协议详解算法
1.物理层缓存
典型设备:中继器、集线器(Hub)、网线、调制解调器、光纤、双绞线、同轴电缆服务器
数据单元:比特(bit)网络
做用:机械、电子、定时接口通讯信道上原始比特流传输加密
协议:IEEE 802.二、Enternet v.二、Internetworkspa
2.数据链路层翻译
典型设备:网卡、网桥、交换机
代理
数据单元:帧指针
做用:物理寻址,同时将物理比特流转变为逻辑传输链路对象
协议:隧道协议:PPTP(点对点隧道协议)、L2TP(第二层隧道协议)、MPLS
3.网络层
典型设备:路由器、防火墙、多层交换机
数据单元:数据包
做用:控制子网的运行,如逻辑编址、分组传输、路由选择
协议:IP、IGMP、BGP、RIP(属于UDP)、ICMP、ARP、RARP
4.传输层
典型设备:进程和端口
数据单元:数据段
做用:接受上一层的数据,在必要的时候把数据进行分割,并将这些数据交给网络层,且保证这些数据段有效到达对端
协议:TCP、UDP
5.会话层
数据单元:数据
做用:不用机器上的用户之间创建及管理对话
协议:SSL、TSL
6.表示层
数据单元:数据
做用:信息的语法语义以及他们的关联,如加密解密、转换翻译、压缩解压缩
协议:LPP
7.应用层
数据单元:数据
做用:各类应用程序协议
协议:SMTP、POP三、HTTP、FTP、Telnet、DNS、DHCP、SNMP
重点协议解析
1.HDLC
HDLC(High-Level Data Link Control,高级数据链路控制),是链路层协议的一项国际标准,用以实现远程用户间资源共享以及信息交互。HDLC协议用以保证传送到下一层的数据在传输过程当中可以准确地被接收,也就是差错释放中没有任何损失,而且序列正确。HDLC协议的另外一个重要功能是流量控制,即一旦接收端收到数据,便能当即进行传输。
HDLC的监控帧用于差错控制和流量控制,一般简称为S帧
00——接收就绪(RR),由主站或从站发出,主站可使用RR型S帧来轮询从站,即但愿从站传输编号为N的I帧,边进行传输;从站也能够用RR型S帧来作相应,表示从站但愿从主站那里接收到的下一个的I帧的编号是N
01——拒绝(REJ),由主站或从站发出,用以要求发送方对从编号为N开始的帧及其后全部的帧进行重发,这也暗示N之前的帧已被正确接收
10——接受未就绪(NRN),标识编号小于N的I帧已被接收到,但当前正处于忙状态,还没有准备好接收编号为N的帧,这可用来对链路流量进行控制
11——选择拒绝(SREJ),它要求发送方发送编号为N单个I帧,并暗示其余编号为I帧已经所有确认。差错机制为选择重发
2.TCP和UDP
TCP特色:
(1)面向链接的传输层协议
(2)每一条TCP链接只能有两个端点,只能是点到点
(3)TCP提供可靠的交付服务,经过TCP链接传送的数据无差错、不丢失、无重复、而且按顺序到达
(4)TCP提供全双工通讯,TCP容许通讯双方的应用进程在任什么时候刻都能发送数据。在TCP链接的两端都有发送缓存和接收缓存,用来临时存放通讯的数据
(5)面向字节流:TCP把应用进程交下来的数据当作是一连串无结构的字节流,TCP并不关心应用进程一次把多长的报文发送到TCP的缓存中,而是根据对端给出的窗口值和当前网络拥塞的程度来决定一个报文段应该包含多少个字节
UDP的特色:
(1)UDP是一种简单的面向数据报的传输协议,实现的是不可靠、无链接的数据报服务,一般用于不要求可靠性传输的场合
(2)UDP传输能够提升传输效率,减小额外的开销,使用UDP传输时,应用进程的每次输出均生成一个UDP数据报,并将其封装在一个IP数据报中发送
(3)UDP没有拥塞控制,因此网络出现拥塞不会让源主机的发送速率下降,这对于某些实时应用是很重要的。不少实时应用要求源主机以恒定的速率发送数据,而且容许在拥塞的时候丢失一些数据,但不容许有太大的时延
TCP和UDP协议均提供了端口寻址的能力
创建TCP链接时,端口状态有:
LISTEN:服务器等待链接过来的状态
SYN_SENT:客户端发起链接(主动打开),变成此状态,若是SYN超时,或者服务器不存在直接CLOSED
SYN_RCVD:服务器收到SYN包的时候,就变成此状态
ESTABLISHED:完成三次握手,进入链接创建状态,书名此时已经能够进行数据传输了
三次握手过程:
做用:创建三次握手,而非二次握手是防止产生错误的链接
过程:当发送方发送了SYN=1,ACK=0请求后,须要等待收到对方的发送的SYN=一、ACK=1的数据包;收到以后,发送方在发送SYN回应,已创建正常的三次握手请求
但出现错误链接时,会以RST、ACK包回应来拒绝链接
TCP协议中URG指针的做用是当等于1的时候。高速系统有紧急数据传送,应该尽快
TCP协议中用于进行流量控制的字段为窗口,TCP协议使用可变大小的滑动窗口协议实现流量控制。
2.ARP
ARP协议的数据单元被封装在以太帧中传输
3.ICMP
ICMP协议做为IP数据报中的数据,封装在IP数据报中传
4.RIP
RIP协议属于应用层协议,被封装在UDP报文中传输,RIP协议的默认路由更新周期是30秒
RIPv2对RIPv1协议的改进之一为路由器有选择地将路由表中的信息发送给邻居,而不是发送整个路由表。具体说,一条路由信息不会被发送给
该信息的来源,这种方法叫作水平分割法,做用是解决路由环路。
5.OSPF
(1)OSPF路由器周期性(默认10秒)的从其启动的OSPF协议的每个接口以组播地址224.0.0.5发送HELLO包,以寻找邻居
(2)OSPF的每一个区域运行路由选择短发的一个实例
(3)OSPF采用Dijkstra算法计算最佳路由
(4)OSPF在理由发生变化的时候才会发送更新信息
(5)OSPF协议是链路状态路由协议,用区域0表示主干区域,该协议提供了整个网络的拓扑视图,并根据拓扑图计算到达每一个目标的最优路径
(6)OSPF协议能对网络发生的变化快速响应,当网络发生变化时发送触发式更新,发送周期性更新链路状态通告(LSA),并非相互交换本身的整张路由表
(7)OSPF路由协议不一样进程之间能够进行路由重分布,进程号仅在本地有意义。
OSPF协议将网络分红4种区域,其中存根区域不接受本地自制系统之外的路由信息,岁自制系统之外的目标采用默认路由0.0.0.0,做用是减少路由表规模和路由信息数量。
6.POP3
POP3是邮局协议,用的是TCP的110端口,电子邮件协议有POP三、SMTP、IMAP
7.BGP4
在BGP4协议中keepalive报文将正常工做信息告知邻居,update报文给出了新的路由信息
8.DHCP
(1)DHCP服务器租约默认为8天
(2)当租约期过去50%时,客户机与服务器联系更新租约
(3)当租约期过去87.5%时,客户机与服务器联系失败,从新启动IP租用过程
(4)客户机能够采用ipconfig/renew从新申请地址
DHCP客户端经过广播的方式发送DHCPDiscover消息。
当DHCP客户机第一次登录网络的时候(也就是客户机上没有任何IP数据的时候),他会经过UDP的67端口向网络上发送出一个DHCPDiscover数据包(包中包含客户机的MAC地址和计算机名等信息)。由于客户及还不知道本身属于哪个网络,因此封包的源地址为0.0.0.0,目标地址为255.255.255.255,而后再附上DHCPDiscover的信息,向网络进行广播
DHCP Release:释放申请的IP,DHCP Decline:拒绝该IP,DHCP Nack:取消申请的IP,DHCP Renew:从新申请IP,DHCP Request请求从新租用IP地址
9.DNS
在DNS服务器中的资源记录有如下几种:
(1)SOA定义了该区域中哪一个名称服务器是权威域名服务器
(2)NS表示该区域的域名服务器
(3)PTR记录把IP地址映射到域名
(4)MX邮件交换记录,定义了区域的邮件服务器及优先级
(5)A表示主机,A记录表示主机名到IP地址的映射
(6)CNAME表示别名
(7)TXT记录,通常指为某个主机名或域名设置的说明
10.SNMP
SNMP使用以下5种格式的PDU(协议数据单元),也是SNMP系列协议中最基础的部分:
Get-Request:由管理进程发出,向管理代理请求其取值
Get-Next-Request:由管理进程发出,在Get-Request报文后使用,表示查询MIB中的下一个对象,经常使用于循环查询
Set-Request:由管理进程发出,用来请求改变管理代理上的某些对象
Get-Response:当管理代理收到管理进程发送的一个Get-Request或Get-Next-Request报文时,将应答的一个该报文
Trap:一种报警机制(属于无请求的报文),用于在乎外或忽然故障的状况下管理代理主动向管理进程发送的报警信息。常见的报警类型有冷启动、热启动、线路故障、线路故障恢复和认证失败等
SNMP采用UDP的方式传输,SNMP使用的端口号是161,SNMP TRAP使用的端口号是162
SNMP使用的是无链接的UDP协议,所以在网络上传送的SNMP豹纹的开销很小,但UDP是不保证可靠交付的。同时SNMP使用UDP的方法有些特殊,在运行代理程序的服务器端口用161端口来
接收Get和Set报文和发送响应报文(客户端使用临时端口),但运行管理程序的客户端则使用162端口进行接收来自各代理的Trap报文。
若是代理收到一个Get请求,若是不嗯可以提供该对象的值,则以该对象的下一个值做为响应。
11.CSMA/CD
CSMA/CD是介质访问子层的协议
12.FTP
FTP服务器使用20和21两个网络端口和FTP客户端进行通讯。主动模式下,FTP服务器的21端口用于传输FTP的控制命令,20端口用于传输文件数据。
13.RSVP
资源预留协议RSVP,他的过程从应用程序流的源节点发送Path消息开始,该消息会沿着六所流经路径传到流的目的节点,并沿途创建路径状态,目的节点收到该Path消息后,会向源节点回送Resv消息,
沿途创建预留状态,若是源节点成功受到预期的Resv消息,则确认在整条路径上资源预留成功
14.SMTP
使用端口号25
15.HTTP/HTTPS
使用短端口号是80,HTTPS端口号443
16.Telnet
端口号23,Telnet服务器所开放的端口,用于从本地远程登陆对方电脑
未完待续。。。。4.1