网络协议和管理——03tcp/ip协议

DOD和TCP/IP模型
 
TCP/IP 协议簇以及其中协议对应的DoD模型层
 
 
 
 
 
进程/应用层
 
 
DHCP/BootP:动态主机配置协议,给主机配置IP地址
DHCP与BootP 差别:BootP给主机分配IP地址,必须人工将主机的硬件Mac地址输入到B哦哦他P表中,Bootp可以用于发送操作系统,让主机使用它启动(无盘工作站)
主机向DHCP服务器请求IP地址时,DHCP服务器可提供给主机的信息列表
  • IP地址
  • 子网掩码
  • 域名
  • 默认网关(路由器)
  • DNS服务器地址
  • Wins服务器地址
客户机为获得IP地址,需要向DHCP所在服务器的第二层和第三层发送广播
  1. Ethernet II,Src:0.0.0.0(+自己mac地址),Dst:Broadcast(ff:ff:ff:ff:ff:ff)
  2. Internet Protocol,Src:0.0.0.0(0.0.0.0), Dst:255.255.255.255(255.255.255.255)
 
客户端下那个DHCP服务器请求IP地址的步骤如下:
  1. DHCP客户机广播一条DHCP发现消息,寻找DHCP服务器(端口67)
  2. 收到DHCP发现消息的DHCP服务器向护照及发送回一条淡泊DHCP提议消息
  3. 客户端向服务器广播一条DHCP请求消息,请求提议的IP地址和其他消息
  4. DHCP以单播的方式发回一条DHCP确认消息,完成交互
 
 
DHCP冲突
    分配地址过程中,DHCP服务器在分配地址池中的地址前,将使用ping程序来测试其可用性,如果没有主机应答,默认表示IP地址未分配出去。
    主机可广播自己的地址,使用免费ARP(gratuitous ARP)来帮助避免地址重复,HDHCP客户端在本地Lan或者Vlan中发送ARP广播,并要求解析分配新的细致,从而消灭冲突
 
主机到主机层协议
  • 传输控制协议(TCP)可靠,采用全双工,面向连接,需要进行错误检查,复杂,网络开销巨大
  • 用户数据报协议(UDP)
    TCP(Transmission Control Protocol,传输控制协议)接受来自应用程序的大型数据块,并将其划分成数据段。它给每个数据段编号,让接收主机TCP栈能够按希望的顺序排列数据段。发送数据段后,发送的主机的TCP等待来自接收端TCP的确认,并重传未得到确认的数据段。
    发送主机开始沿分层模型向下发送数据段之前,发送方TCP栈与 目标主机的TCP栈联系,已建立链接。他们创建的是虚电路,这种通信被认为是面向连接的。
    初始握手期间,两个TCP栈还将就如下方面达成一致:接收方的TCP发回确认前,将发送的信息量(窗口技术)。预先就各方面达成一致后,为可靠通信铺平了道路。
端口号:16位二进制(0-65535)
    0-1023 知名端口号
    1024-49151 注册端口号
    49152-65535 自用随机端口号
 
TCP数据段的格式
 
TCP报头长20B(20*8=160二进制,包含选项时为24B)
  • 源端口              发送主机的应用程序的端口号
  • 目标端口号       目标住的应有程序端口号
  • 序列号(seq)       一个编号,tcp用来将数据按正确的顺序重新排列(排序),重传丢失或者受损的数据。
  • 确认号(ack)       TCP期待接下来收到的数据段的序列号
  • 报头长度            占4位,它指出TCP报文段的数据起始处距离TCP报文段的起始处有多远。“数据偏移”的单位是32位字,即以4字节为计算单位。
  • 保留                  总是设置为0
  • 编码位/标志      用于建立和终止会话控制功能
    • SYN 同步位
    • ACK 确认位
    • RST 复位
    • URG 紧急指针
    • PSH 推标志,不排队。
    • FIN 终止位
  • 窗口大小           发送方愿意接受的窗口大小,单位为字段
  • 校验和             CRC(Cyclic Redundancy check,循环冗余校验),TCP不信任底层,因此校验所有数据,CRC检查报头和数据字段。
  • 紧急指针          记建档设置了编码位中的紧急指针字段是,才有效。如果设置了,该字段表示非紧急数据开头位置相对于当前序列号的便宜量,单位位字节
  • 选项                  长度为0或32位的整数倍,如果没有选项长度为零,如果包含选项导致该字段长度位不是32的整数倍,必须填充零,以确保该字段长度位32的整数倍
  • 数据                  传递给传输成的TCP协议信息,报过上层报头
 
 
UDP:
 
 
 
因特网层
基本过程:
  • 编制
  • 封装
  • 路由
  • 解封装
协议:
  • 因特网协议(IP)
  • 因特网控制消息协议(ICMP)
  • 地址解析协议(ARP)
  • 逆向地址解析协议(RARP)
  • 代理ARP
  • 免费ARP
 
IP(Internet Protocol,因特网协议):
                
 
 
  •  版本:IPv4 v6
  • 报头长度  计算iP报头长度
  • 服务类型  优先级,前三位为优先
  • 总长度   包的总长度
  • 标识位   唯一IP分组值,区分不同应用数据的标记
  • 标志位 
    • D(don't是否可分辨)=1 不可分辨 0可分辨
    • M(more 是否有后需包)=1 有 0 没有
  • 分段偏移 有序重组数据包
  • 存活时间(1字节) 
  • 协议号 表示上层协议类型,TCP=6 UDP=17
  • 包有检验 检验是否错误
  • 源IP地址
  • 目的IP
  • 可选项 0或32位
 
IP地址:32位编码
01111111-00000000(0-127)A类地址
10111111-10000000(128-191)B类地址
11011111-11000000(192-223)C类
11101111-11100000  (224-239)   D类(组播地址)
11111111-11110000 (240-255)E类(不适用 实验室)
 
 
 
私网地址:
A类地址:10.0.0.0~10.255.255.255
B类地址:172.16.0.0 ~172.31.255.255
C类地址:192.168.0.0~192.168.255.255

猜你喜欢

转载自www.cnblogs.com/franc/p/12390999.html