`

TCP/IP_UDP归纳

阅读更多
参考TCP/IP三卷
第11章  UDP:用户数据报协议
在这章中,提到了UDP,分片,和UDP服务器的特征。

文章第一句话就指出,IP数据报分片,并不是发送端主机连接第一个网络才这么做,而是在源端到目的端之间

每个网络都可能产生分片。
最显著一个特征,不提供可靠性。

UDP首部字段:
16位UDP长度:这个长度指的是全长减去IP首部的长度。即,UDP首部和UDP数据的字节长度

UDP检验和:
看看IP首部检验方法:只覆盖了IP首部,不涉及到数据。
UDP和TCP都有覆盖他们的首部和数据, 同时,UDP的检验和是可选的,TCP是必须的。RFC标准中,UDP检验默认

是开启的。要想知道UDP是否打开检验和,检查UDP首部的UDP检验和即可。
检验时是16bit进行相加,所以对可能出现奇字节的UDP,经常用一个全0的字段填充,这个全0的字段是否会被

发送,要靠具体情况而定。

UDP和TCP段都包含一个12字节长的伪首部,为了计算检验而设置,不做为包发送, 伪首部包含IP首部一些字段

,其目的让UDP进行两次检验。。  其实可以发现ARP中也包含了一些重复性的数据。我对这个看法认为,各层

之间是透明的,除了一些检验外,不涉及到其他数据交换等。所以有这种现象是正常的。


IP分片:
  为什么要IP分片。略
  在分片时,除了第一片有运输层的首部,其他都只有IP层的首部
  几个主要特征位:
  一个唯一的标志值
  是否允许分片()
  是否还有其他分片
  偏移量
 
ICMP不可达差别(需要分片)
  基本MTU都在1500字节左右
  当路由器收到一份需要分片的数据报,而在IP首部又设了不可分片标志.在该报文中设置了下一站网络的MTU

最大UDP数据报长度
  理论上,IP数据报最大长度为65535字节。去除20字节IP首部和8个字节的UDP首部,理论为65507,但是大多

数实现所提供的长度比这个最大值小

UDP路径MTU发现



UDP和ARP之间交互作用
   这里作者举了一个很有意思的例子:发送一个8192字节UDP,产生6个数据报片,ARP缓存似乎空的。
用tcpdump查看结果是,在第一个arp返回前,总共产生6个ARP请求。认为原因是,IP很快产生6个数据报片,而

每个数据报片都引发一个ARP请求。
   在接收到第一个ARP应答时,只发送最后一个数据报片,似乎将前5个数据报片全都丢弃了。那么可以得出,

ARP操作的规律,在等待一个ARP应答时,只将最后一个报文发给特定的目的主机(FIFO)。(RFC里规定,ARP应该

至少保留一个报文.)
   在这里就有个问题,如果IP分片越多,发送的ARP就越多。建议最高速率是每秒一次。
   在监视时大家会发现没产生ICMP错误,这里有两个原因:
   1.大多数从Berkeley派生的实现从不产生错误.这些实现会设置定时器.比如在以上例子中,在第一个数据报

片出现时,IP层必须启动一个定时器.正常值为30秒或60秒,如果超时,或所有数据报片未能全部到达,那么将丢弃
   2.并未接收到第一个数报片(包含传输层首部),ICMP就无法区分出是哪个进程所发送的数据报被丢弃.

  UDP输入队列
  一台服务器,先休眠30秒.2台客户机,同时向它各发送3个数据报,在12秒内完成.结果S只收到两台C的第一份数

据报.其他四份丢弃.从这里可以看出,不存在像ICMP的报错信息,UDP输出队列遵循FIFO的.而在ARP里却是LIFO.


限制本地IP地址

大多UDP服务器在创建UDP端点都使用直接监听方式.如 *.*  ports
就表明进入的UDP数据报如果其目的为服务器端口,那么(可能有多个地址)本接口均可接收到它.

可以手动指定IP地址
变成
XXX.XXX.XXX.XXX ports
0
1
分享到:
评论

相关推荐

    TCP/IP 实验报告

    《TCP/IP协议分析》课程实验主要涵盖了网络通信中四个核心协议——IP、UDP、TCP以及ICMP的报文构造和解析。实验旨在让学生通过实际编程深入理解这些协议的工作原理和结构,增强对网络协议栈的理解。 实验环境要求...

    网络总结(TCP和UDP).pdf

    下面将对TCP和UDP的详细知识点进行归纳总结。 ### TCP协议知识点 1. **TCP/IP协议族成员**: TCP/IP并不只是指TCP和IP两种协议,它是一系列网络协议的统称,这些协议共同构成了互联网的基础。除了TCP和IP,还包括...

    socker_UDP_srv

    **Winsock**(Windows Sockets)是微软为Windows操作系统开发的一个网络编程接口,它提供了一种用于实现TCP/IP协议和其他网络协议的API(应用程序编程接口)。通过Winsock,开发者可以编写出能够在不同计算机之间...

    软考中级网络工程师备考知识点

    这部分内容是对历年来考试重点的归纳,可能包括OSI模型的七层结构、TCP/IP四层模型、路由协议(如RIP、OSPF、BGP)、网络安全策略、网络设备配置(路由器、交换机)等内容。考生需要理解每层模型的功能,熟悉各类...

    WIZ100SR_用户手册_V2_0

    - **支持多种网络模式**:包括TCP服务器模式、TCP客户端模式和UDP模式等,可以根据应用场景灵活选择。 - **配置工具**:提供了图形界面的配置工具,可以方便地进行网络参数设置(如IP地址、子网掩码、网关地址等)...

    C_完整的通信代码(点对点,点对多,同步,异步,UDP,TCP).txt

    该类提供了低级别的网络编程接口,支持多种协议(如TCP/IP、UDP等)。 #### 1. Socket类的基础用法 - **创建Socket**:通过构造函数`new Socket(AddressFamily addressFamily, SocketType socketType, ProtocolType...

    计算机网络简答题归纳.doc

    以上是计算机网络中关于TCP/UDP协议、OSI模型、TCP/IP协议栈、IP地址与MAC地址、ARP协议、TCP连接建立、端口作用、网络设备功能等方面的详细解析。这些知识点对于理解和操作计算机网络至关重要。

    LWIP协议栈的分析和设计[归纳].pdf

    3. **丰富的协议支持**:LWIP支持多种网络协议,包括但不限于IP转发、ICMP、IGMP、UDP、TCP、DNS、SNMP、PPP、ARP、IP分片处理和DHCP。此外,还提供了实验性的UDP扩展。 4. **自定义接口**:LWIP提供内部回调接口...

    Apache Mina Server 2.0 中文参考手册(带目录)

    Apache Mina是一个开源的网络应用框架,它主要面向TCP/IP和UDP/IP通信协议栈,并提供了一系列用于开发高性能、可扩展的网络应用的API。它的主要特点包括事件驱动模型、异步I/O操作,以及对Java对象序列化和虚拟机...

    《网络编程与协议分析》课程设计报告.docx

    2. **TCP/IP协议族详解**:详细介绍TCP/IP协议族中的各个层次及其对应协议,如IP协议、TCP协议、UDP协议、ICMP协议等。 3. **网络数据分析工具**:学习使用Wireshark等网络数据分析工具来捕获和分析网络数据包。 4. ...

    网络工程师知识点.pdf

    TCP/IP协议:熟悉TCP/IP协议族的基本原理,包括TCP、UDP、IP、ICMP、ARP等协议的作用和工作原理。 HTTP协议:了解HTTP协议的基本概念和工作流程,如GET、POST等请求方法。 FTP协议:掌握FTP协议用于文件传输的...

    对于以太网环境下UDP传输中的数据包长度问题[归纳].pdf

    为了理解这个问题,我们需要从TCP/IP协议的四层结构入手:链路层、网络层、传输层和应用层。 首先,在链路层,以太网(Ethernet)的数据帧的长度是(46+18)-(1500+18),其中的18是数据帧的头和尾,也就是说...

    计算机网络考试及面试重要基础知识点.pdf

    TCP/IP模型简化了OSI模型,将其归纳为四层:网络接口层、网际层、运输层和应用层。五层协议体系结构进一步简化,与TCP/IP模型相似,但没有单独的会话层和表示层。每一层都有相应的协议,如物理层的RJ45、数据链路层...

    DTU设置_花生壳动态域名解析归纳.pdf

    此时,需要确保系统防火墙和路由器设置中开放TCP端口80和6060,以及UDP端口6060,以便花生壳正常工作。 通过以上步骤,用户可以利用花生壳实现动态IP环境下的固定域名访问,这对于需要远程访问或监控的DTU等设备来...

    以太网ENC28J60[归纳].pdf

    用户文件如main.c、stm32f10x_it.c、led.c、usart.c、spi_enc28j60.c、enc28j60.c、ip_arp_udp_tcp.c和web_server.c等,分别对应了主程序、中断服务、LED操作、串口通信、SPI与ENC28J60的交互、ENC28J60的具体驱动、...

    ACUS2007

    它旨在提供一种简单、灵活的方式来创建各种类型的网络应用,包括但不限于TCP/IP和UDP/IP应用程序。此外,MINA还支持其他多种传输层协议,并且具有良好的扩展性和可移植性。 #### 2. 架构特点 - **事件驱动模型**:...

    IPV4与IPV6兼容socket编程接口详解[归纳].pdf

    生成套接字需要三个参数:通信目的IP地址、使用的协议、使用的端口号。通过将这三个参数结合起来,应用层就可以和传输层(或网络层)通过套接字接口,区分来自不同应用程序进程或网络连接的通信。 TCP编程的服务器...

    HLK-RM04SerailWifiDataSheet串口WIFI[归纳].pdf

    HLK-RM04是由深圳海联讯电子科技有限公司开发的一款低成本嵌入式UART-ETH-WIFI模块,它将串口、以太网和无线网络(WiFi)接口融合在一起,基于通用串行接口网络标准,内置TCP/IP协议栈。该模块的主要功能是使传统...

Global site tag (gtag.js) - Google Analytics