应用层协议—服务(dhcp, nfs, ftp, ntp, dns)
传输层协议—TCP/UDP/http
传输层协议:
面向连接的:TCP (Transmission Control Protocol 传输控制协议)
TCP需要在传输方和接收方之间建立虚链接,建立一个专用的虚拟的连接通道.后续的所有数据都在这个虚拟通道中传输.所以不需要封装额外的信息
互联网上百分之95的连接都属于TCP
无连接的:UDP (User Datagram Protocol 用户数据报协议)
即时通讯软件,DNS解析等都是基于UDP实现的
应用层某一个应用要想跟其他应用建立通讯的话,为了标识俩个进程,需要基于TCP或者UDP的端口机制来标识进程自己的地址,当然也可以不通过TCP/UDP协议,自行直接通过IP报文向外发送,则其套接字由自己维护
网络套接字的类型:
TCP套接字 基于TCP协议->IP+端口
UDP套接字 基于UDP协议->IP+端口
raw套接字(由程序自身维护) Unix sock 裸套接字
CIP;CPort;SIP;SPort 这四个组合起来用来标识一个独立完整的连接,因素缺一不可
客户端与服务器端之间的通讯也遵循某些规则:
ftp client --> dhcp server 肯定是不能通讯的
程序之间为了实现某种特定应用,也必须遵循某些规范,这些规范被称为应用层协议
http:
超文本传输协议(HyperText Transport Protcol&#