UDP和TCP的报文详解

TCP和UDP报文详解

一、先说说端口号

TCP和UDP都是位于传输层的协议,传输层负责将数据从发送端传输到接收端。

端口号(Port)标识了一台主机上正在进行通信的一个具体的应用程序,在TCP/IP协议中,使用源IP、源端口号、目的IP、目的端口号、协议号的五元组来标识一个通信,即我们只要标注出这五个数据,就能唯一确定一条通信线路。

端口号的范围划分是:

  • 0~1023:知名端口号,其中HTTP、FTP、SSH等这些广泛使用的应用层协议,端口号都固定在前1024个端口号之中。
  • 1024~65535:操作系统动态分配的端口号,客户端程序的端口号,会由操作系统在这个范围内进行分配。

其中知名端口号是为了方便使用,给某些服务器固定分配的端口号:

  • SSH服务器:使用22端口
  • FTP服务器:使用21端口
  • Telnet服务器:使用23端口
  • HTTP服务器:使用80端口
  • HTTPS服务器:使用443端口

因此用户在写自己的程序使用端口号的时候,应该避免这些知名端口号。

一个进程可以和多个端口号绑定,即这个进程可以通过这些端口号分别建立连接,实现通信,但是一个端口号只能绑定一个进程,假如绑定多个进程,这个端口号在通信时无法判断应该将数据具体交给哪个进程!

二、Linux下查看网络状态的命令netstat

netstat是一个用来查看网络状态的重要工具,如果在Linux服务器的命令行上输入netstat显示没有该命令,则需要通过yum进行安装。

netstat [-nlptua]

命令行参数解释:

  • n:拒绝显示别名,能以数字显示的全部转化为数字
  • l:仅列出在Listen(监听)的服务状态
  • p:显示建立相关链接的程序名
  • t:仅显示TCP相关的选项
  • u:仅显示UDP相关的选项
  • a:(all)显示所有选项,默认不显示Listen相关

image-20220322135358003

三、UDP协议

UDP协议格式:

前两行是UDP的首部,也可以叫做UDP的报头,报头

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值