网络编程——端口

端口

一、端口概述

TCP/IP 协议采用端口标识通信的进程
用于区分一个系统里的多个进程

二、端口特点

1、对于同一个端口,在本同系统中对应着不同的进程
2、对于同一个系统,一个端口只能被一个进程拥有
3、一个进程拥有一个端口后,传输层送到该端口的数据全部被该进程接收,同样,进程送交传输层的数据也通过该口被送出

三、端口号

1、端口号概述

类似 pid 标识一个进程: 在网络程序中,口号(port) 标识一个运行的网络程序

2、特点

①、端口号是无符号短整型的类型
②、每个端口都拥有一个端口号
③、TCP、UDP 维护各自独立的端口号
④、网络应用程序.至少要占用一个端口号也可以占有多个端口号

3、端口号范围:0 ~ 65535

①知名端口( 1-1023 ):由互联网数字分配机构(IANA)根据用户需要进行统一分配,例如:FTP_21,HTTP_80等服务器通常使用的范;若强制使用,须加root特权(系统端口)
②动态端口( 1024-65535 ):应用程序通常使用的范围
1024~5000:特殊应用程序
5001~ 65535:系统预留给用户使用的端口

注意
端口号类似于进程号,同一时刻只能标志一个进程
可以重复使用

4、TCP/IP协议族所有协议对应的功能和端口号

OSI层 协议 功能 端口
应用层 HTTP 超文本传输协议,用于Web页面的访问 80
应用层 HTTPS 具有安全性的超文本传输协议,使用SSL/TLS加密 443
应用层 FTP 文件传输协议,用于文件的上传和下载 21
应用层 FTPS 具有安全性的文件传输协议,使用SSL/TLS加密 990
应用层 SSH 安全外壳协议,用于远程登录和执行命令 22
应用层 Telnet 远程登录协议,不具备安全性,已逐渐被SSH取代 23
应用层 SMTP 简单邮件传输协议,用于电子邮件的发送 25
应用层 POP3 邮局协议版本3,用于接收电子邮件 110
应用层 IMAP 互联网邮件访问协议,用于接收和管理电子邮件 143
应用层 DNS 域名系统,用于将域名解析为IP地址 53
应用层 DHCP 动态主机配置协议,用于自动分配IP地址和配置信息 67/68
应用层 SNMP 简单网络管理协议,用于网络设备的管理和监控 161
应用层 NTP 网络时间协议,用于时间同步 123
应用层 RDP 远程桌面协议,用于远程桌面连接 3389
应用层 SIP 会话初始化协议,用于实时通信(如VoIP) 5060
应用层 H.323 音视频会议协议,用于实时音视频通信 1720
网络层 ICMP 互联网控制报文协议,用于错误检测和传递状态信息 -
网络层 IP 互联网协议,用于数据包的传输和路由 -
网络层 RIP 路由信息协议,用于动态路由选择 -
网络层 OSPF 开放最短路径优先协议,用于动态路由选择 -
网络层 BGP 边界网关协议,用于自治系统间的路由选择 -
网络层 IGMP 互联网组管理协议,用于组播的管理 -
数据链路层 SLIP 串行线路IP协议,用于通过串行线路连接互联网 -
数据链路层 CSLIP 压缩串行线路IP协议,对SLIP的压缩扩展 -
数据链路层 PPP 点对点协议,用于在两个节点之间建立数据链路连接 -
数据链路层 ARP 地址解析协议,用于将IP地址映射为物理MAC地址 -
数据链路层 RARP 反向地址解析协议,将物理MAC地址映射为IP地址 -
数据链路层 MTU 最大传输单元,指数据链路层可传输的最大数据长度 -
物理层 - 硬件设备和传输介质的物理连接和传输 -

你可能感兴趣的:(网络编程,网络,linux,c语言)