这是关于网络系列的第二篇文章,接下来会有更多精彩内容.敬请期待! 让咱们一块儿乘风破浪!网络
上篇咱们了解了关于IP协议的相关知识,这里咱们继续讨论运输层的UDP协议.但愿你有所收获.post
UDP 及 后来说到的TCP都属于运输层协议.运输层向它上层的应用层提供通讯服务.网际层的IP协议能够经过IP数据报首部的目的地址,将数据报交付到目的地, 为何还须要运输层呢? 其实,"两台主机间的通讯"的描述是不够清晰的,须要通讯的实体应该是主机中的进程.能够看到,网际层是提供点到点的通讯(也就是两台主机之间可以找到彼此), 而运输层提供了端到端的通讯(也就是各个进程之间的交流).code
运输层的一个很重要的功能是复用和分用:视频
为了解决复用和分用过程当中数据不混淆的问题, 运输层采用协议端口号(或端口)
来区分.在TCP/IP体系中, 运输层采用16位(共65535个)的端口号来标识一个端口. 端口只是具备本地意义, 表示了应用程序和运输层交互时使用的标识.游戏
不一样计算机的两个应用程序通讯时,须要获取对方的IP地址(知道对方在哪),和对方程序的端口(找到对方的程序入口).就像咱们寄信时,要写上地址(IP地址)和收件人(端口)同样.进程
读到这里你是否明白了为何HTTP服务的端口默认80,HTTPS默认端口443,本地启动的服务问啥建议使用8888了吧?图片
服务端使用的端口号get
熟知端口(0~1023), 指派该比较重要的,你们熟知的应用使用,便于你们和他通讯, 下面是经常使用的熟知端口io
FTP | TELNET | SMTP | DNS | TFTP | HTTP | SNMP | HTTPS |
---|---|---|---|---|---|---|---|
21 | 23 | 25 | 53 | 69 | 80 | 161 | 443 |
登记端口(1024~49151).使用该类端口须要登记,避免重复.table
客户端使用的端口号
客户端的端口号为(1024~65535),随着客户端的运行而肯定,短暂存在.
接下来就来了解下运输层的UDP协议(User Datagram Protocol), 后序文章会讲述TCP协议(Transmission Control Protocol).
UDP 只是在IP协议之上添加了少量功能, 复用和分用及差错检测.其主要特色是:
UDP的报文格式:
包含首部和数据字段,数据字段是上层交付的数据,首部包含4个字段,各占2字节:
整体来看,UDP仍是比较简单的.它适用于那些无须关心数据是否准确到达的服务, 如视频电话, 局域网游戏等.