不同应用对应的端口号会重叠吗_漫话TCP/IP:传输层 - 端口号(1)

这篇博客探讨了TCP/IP协议栈中的传输层,特别是端口号的角色。端口号用于区分同一台计算机上的不同应用程序,分为标准端口号(静态分配)和动态端口号。标准端口号有特定用途,而动态端口号在49152到65535范围内分配。文中还提及了端口号可以跨不同传输层协议使用,并提供了Linux平台的socket通信示例。
摘要由CSDN通过智能技术生成

a4fbf5d520723268568324d287e893d7.png

序言

在开始介绍传输层之前,我们首先再来回顾下TCP/IP协议栈。TCP/IP中有两个具有代表性的传输层协议,它们分别是TCP和UDP。TCP提供可靠的通信传输,而UDP则常被用于让广播和细节控制交给应用的通信传输。

ab7d1c08621f1ab0788b62104bf54e38.png

数据链路和IP中的地址,分别指的是MAC地址和IP地址。前者用来识别同一链路中不同的计算机,后者用来识别TCP/IP网络中互连的主机和路由器。

同样,传输层为了识别自己所传输的数据包究竟应该发给哪个应用,也需要设定这样一个编号。那就是端口号。端口号用来识别同一台计算机中进行通信的不同应用程序。因此,它也被称为程序地址。

分配

在实际进行通信时,要事先分配端口号。分配端口号的方法分为两种:

  1. 标准既定的端口号(静态分配端口号)

它是指每个应用程序都有其指定的端口号。但并不是说可以随意使用任何一个端口号。每个端口号都有其对应的使用目的。

端口号由其使用的传输层协议决定。因此,不同的传输协议可以使用相同的端口号。

Service Name and Transport Protocol Port Number Registry​www.iana.org

2. 动态分配端口号

动态分配的端口号取值范围在49152到65535之间。

练习

下面这个示例是在Linux平台编写的客户端和服务端通过socket的通信示例:

TCP/IP:Tutorial​zhuanlan.zhihu.com
36d84a7a0e1d19636742b74a3e6a4137.png
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值