TCP/IP详解:协议(UDP,广播和多播)
2016-10-17 09:51
639 查看
@本系列文章是在阅读TCP/IP协议:详解的过程中,根据稳重内容,对重要知识点做的总结,不包含个人观点,插图均来自书中。
TCP端口号由TCP来查看,UDP端口号由UDP来查看;TCP端口号与UDP端口号是相互独立的
UDP首部
UDP校验和可选,覆盖UDP首部和UDP数据
如果发送端没有计算检验和而接收端检测到检验和有差错,那么UDP数据报就要被悄悄地丢弃。不产生任何差错报文(当IP层检测到IP首部检验和有差错时也这样做)。
不是所有的以太网数据帧都是IP数据报,至少以太网还要使用ARP协议
IP分片
参照TCP/IP详解:协议(网络层),IP数据报中的标识字段表示唯一的IP数据报(一个数据报被分成多片时,多片的标识字段相同);标志字段中的1bit置为1表示还有更多的片,0表示最后一片;片偏移字段指的是该片偏移原始数据报开始处的位置
尽管I P分片过程看起来是透明的,但有一点让人不想使用它:即使只丢失一片数据也要重传整个数据报;原因是IP层本身没有超市重传的机制,UDP也没有,TCP具有
分片过程,除最后一片外,其他每一片中的数据部分(除IP首部外的其余部分)必须是8字节的整数倍
任何运输层首部只出现在第1片数据中
ICMP不可达差错(需要分片)
使用ping程序测试路径MTU
ICMP源站移植差错:当一个系统(路由器或主机)接收数据报的速度比其处理速度快时,可能产生
UDP服务器的设计
客户端IP及端口号
目的IP地址
UDP输入队列
限制本地IP和远端IP
多个端点可以使用同一个IP地址和UDP端口号
单播:每个以太网帧仅发往单个目的主机,目的地址指明单个接收接口,任意两个主机的通信不会干扰网内其他主机(可能引起争夺共享信道的情况除外)
广播:一个主机要向网上的所有其他主机发送帧
多播:帧仅传送给属于多播组的多个主机
主机对信道传输过来帧的过滤情况
备驱动程序将进行另外的帧过滤。首先,帧类型中必须指定要使用的协议(IP,ARP等等)。其次,进行多播过滤来检测该主机是否属于多播地址说明的多播组。
四中广播地址
受限的广播地址255.255.255.255.在任何情况下,路由器都不转发目的地址为受限的广播地址的数据报,这样的数据报仅出现在本地网络中。
指向网络的广播地址:主机号全为1的地址.一个路由器必须转发指向网络的广播,但它也必须有一个不进行转发的选择
指向子网的广播地址:特定子网内主机号全为1的地址.
指向所有子网的广播:与指向网络的广播地址的区别是--是否划分子网
广播是一种应该谨慎使用的功能。在许多情况下,IP多播被证明是一个更好的解决办法
多播
IP多播提供两种服务
向多个目的地址传输数据
客户对服务器的请求
多播地址
范围:224.0.0.0到239.255.255.255
没有可选数据
类型: 1说明是多播路由器发出的查询报文,2说明是主机发出的报告报文
校验和:这里回忆一下:IP校验和只校验20个字节的IP报头;而ICMP校验和覆盖整个报文(ICMP头部+ICMP数据);UDP和TCP校验和不仅覆盖整个数据报,而且还有12个字节的IP伪首部.IGMP和ICMP相同
加入一个多播组,多播的基础就是一个进程的概念,一个进程可以在多个接口上加入同一多播组
第11章:UDP:用户数据报协议
UDP不提供可靠性TCP端口号由TCP来查看,UDP端口号由UDP来查看;TCP端口号与UDP端口号是相互独立的
UDP首部
UDP校验和可选,覆盖UDP首部和UDP数据
如果发送端没有计算检验和而接收端检测到检验和有差错,那么UDP数据报就要被悄悄地丢弃。不产生任何差错报文(当IP层检测到IP首部检验和有差错时也这样做)。
不是所有的以太网数据帧都是IP数据报,至少以太网还要使用ARP协议
IP分片
参照TCP/IP详解:协议(网络层),IP数据报中的标识字段表示唯一的IP数据报(一个数据报被分成多片时,多片的标识字段相同);标志字段中的1bit置为1表示还有更多的片,0表示最后一片;片偏移字段指的是该片偏移原始数据报开始处的位置
尽管I P分片过程看起来是透明的,但有一点让人不想使用它:即使只丢失一片数据也要重传整个数据报;原因是IP层本身没有超市重传的机制,UDP也没有,TCP具有
分片过程,除最后一片外,其他每一片中的数据部分(除IP首部外的其余部分)必须是8字节的整数倍
任何运输层首部只出现在第1片数据中
ICMP不可达差错(需要分片)
使用ping程序测试路径MTU
ICMP源站移植差错:当一个系统(路由器或主机)接收数据报的速度比其处理速度快时,可能产生
UDP服务器的设计
客户端IP及端口号
目的IP地址
UDP输入队列
限制本地IP和远端IP
多个端点可以使用同一个IP地址和UDP端口号
第12章:广播和多播
广播和多播仅应用于UDP单播:每个以太网帧仅发往单个目的主机,目的地址指明单个接收接口,任意两个主机的通信不会干扰网内其他主机(可能引起争夺共享信道的情况除外)
广播:一个主机要向网上的所有其他主机发送帧
多播:帧仅传送给属于多播组的多个主机
主机对信道传输过来帧的过滤情况
备驱动程序将进行另外的帧过滤。首先,帧类型中必须指定要使用的协议(IP,ARP等等)。其次,进行多播过滤来检测该主机是否属于多播地址说明的多播组。
四中广播地址
受限的广播地址255.255.255.255.在任何情况下,路由器都不转发目的地址为受限的广播地址的数据报,这样的数据报仅出现在本地网络中。
指向网络的广播地址:主机号全为1的地址.一个路由器必须转发指向网络的广播,但它也必须有一个不进行转发的选择
指向子网的广播地址:特定子网内主机号全为1的地址.
指向所有子网的广播:与指向网络的广播地址的区别是--是否划分子网
广播是一种应该谨慎使用的功能。在许多情况下,IP多播被证明是一个更好的解决办法
多播
IP多播提供两种服务
向多个目的地址传输数据
客户对服务器的请求
多播地址
范围:224.0.0.0到239.255.255.255
第13章:IGMP:Internet组管理协议
IGMP报文通过IP数据报进行传输,I G M P有固定的报文长度,没有可选数据
类型: 1说明是多播路由器发出的查询报文,2说明是主机发出的报告报文
校验和:这里回忆一下:IP校验和只校验20个字节的IP报头;而ICMP校验和覆盖整个报文(ICMP头部+ICMP数据);UDP和TCP校验和不仅覆盖整个数据报,而且还有12个字节的IP伪首部.IGMP和ICMP相同
加入一个多播组,多播的基础就是一个进程的概念,一个进程可以在多个接口上加入同一多播组
相关文章推荐
- Python+Socket实现基于UDP协议的局域网广播功能示例
- iOS- 移动端Socket UDP协议广播机制的实现
- 【TCP/IP详解 卷一:协议】第十二章 广播和多播
- ios开发UDP协议发送广播寻找设备
- 基于UDP协议的广播程序实例
- 【TCP/IP详解 卷一:协议】第十一章 UDP 用户数据报协议
- 【TCP/IP详解 卷一:协议】第十二章 广播与多播 ping实验
- Socket UDP协议,局域网广播,Android为服务端,pc为客户端
- 《TCP/IP详解》学习笔记(六):UDP 协议
- Android使用wifi通过UDP协议发送广播数据包给PC接收不到问题解决方法
- python+soket实现UDP协议的局域网广播程序
- iOS- 移动端Socket UDP协议广播机制的实现
- 《TCP/IP详解 卷1》 笔记: UDP协议
- 《TCP/IP详解 卷1:协议》 第十一章 UDP:用户数据报协议
- (UDP协议的应用)简单的广播实现
- 用udp协议通讯示例 UDP实现广播接收回复的例子
- 用UDP协议实现广播通信
- 【代码练习8】UDP协议实现局域网屏幕广播功能
- iOS 利用Socket UDP协议广播机制的实现
- 用UDP协议实现广播通信