TCP/IP协议模型分为4层:
1、应用层--常用协议包括HTTP、HTTPS、SMTP、POP3、FTP等,主要是客户端与服务器端的数据交换方法。
2、传输层--定义数据传输的方法,主要定义了两种协议,分别是TCP协议与UDP协议。TCP协议在传输数据时会检查数据的完整性(列如传输邮件);UDP协议主要是满足效率要求(如广播电台)
3、网络层--使用IP地址来定位网络上的计算机,采用路由方法决定数据传输路径。
4、链路层--以太网。
工作大体流程:1)应用层------客户端先选择一个通讯协议;2)传输层-------接下来选择一种数据传输方式(如TCP),随即加上一个TCP包头,TCP包头中包含发送端和接收端的端口信息;3)网络层----定位传输数据的计算机随即加上一个IP包头,IP包头包含发送端和接收端计算机IP地址。4)链路层-----数据在网络上以光电新号传输,必须在数据包上注明“实体层”的地址(以太网卡地址MAC),随即加上MAC地址,包含发送网卡地址,接收网卡地址。
其实质为传输层给内核分配资源,如TCP在内核中维护连接所需的信息,以及用户和内核之间的数据交换;网络层:如IP,找出源机器与目标机器之间的路由路径;链路层:通过MAC确认目标机器。
问题:为什么有IP地址还要MAC地址?
1、当两台主机第一次交换数据时,彼此都不知道对方的MAC地址,但是发送端主机知道接收端主机IP。因此发送端会在网上发出一个ARP的请求包(广播包),整个网络都会接收到该数据包。这个数据包的接收端的MAC地址是未知的,只有指定IP地址的主机会处理这个数据包。所以接收端取得了发送端的MAC地址和IP地址的对应关系,随即发送一个ARP的应答数据包。
2、MAC是以太网的地址形式,其他的网络实体层技术中都会有其特色的地址形式。而TCP/IP网络模型并没有定义实体层技术一定要用哪一种。