协议
所谓的协议
就是双方进行数据传输的一种格式。
网络中,一帧以太网数据包的格式:
层级 | 名称 | 包含的协议 |
---|---|---|
7 | 应用层 | 例如HTTP、SMTP、SNMP、FTP、Telnet、SIP、SSH、NFS、RTSP、XMPP、Whois、ENRP |
6 | 表示层 | 例如XDR、ASN.1、SMB、AFP、NCP |
5 | 会话层 | 例如ASAP、TLS、SSH、ISO 8327 / CCITT X.225、RPC、NetBIOS、ASP、Winsock、BSD sockets |
4 | 传输层 | 例如TCP、UDP、RTP、SCTP、SPX、ATP、IL |
3 | 网络层 | 例如IP、ICMP、IGMP、IPX、BGP、OSPF、RIP、IGRP、EIGRP、ARP、RARP、 X.25 |
2 | 数据链路层 | 例如以太网、令牌环、HDLC、帧中继、ISDN、ATM、IEEE 802.11、FDDI、PPP |
1 | 物理层 | 例如线路、无线电、光纤、信鸽 |
层级 | 名称 | 功能 |
---|---|---|
7 | 应用层 | 文件传输,电子邮件,文件服务,虚拟终端 |
6 | 表示层 | 数据格式化,代码转换,数据加密 |
5 | 会话层 | 解除或建立与别的结点的联系 |
4 | 传输层 | 提供端对端的接口 |
3 | 网络层 | 为数据包选择路由 |
2 | 数据链路层 | 传输有地址的帧以及错误检测功能 |
1 | 物理层 | 以二进制数据形式在物理媒体上传输数据 |
TCP/IP
是传输层协议,主要解决数据如何在网络中传输;而HTTP
是应用层协议,主要解决如何包装数据。
把IP
想像成一种高速公路
,它允许其它协议在上面行驶并找到到其它电脑的出口。TCP
和UDP
是高速公路上的“卡车”
,它们携带的货物就是像HTTP
,文件传输协议FTP
这样的协议等。(可以这样理解:TCP
和UDP
都是用来传输其他协议的)
而Socket
是对TCP/IP
协议的封装
,Socket
本身并不是协议,而是一个调用接口(API
),通过Socket
,我们才能使用TCP/IP
协议。
ip地址
每个IP地址
包括两个标识码
(ID),即网络ID
和主机ID
。同一个物理网络上的所有主机都使用同一个网络ID
,网络上的一个主机(包括网络上工作站,服务器和路由器等)有一个主机ID
与其对应。
Internet
委员会定义了5种IP地址
类型以适合不同容量的网络,即A类~E类。
其中A、B、C3类(如下表格)由InternetNIC
在全球范围内统一分配,D、E类为特殊地址。