付新点了点头,他知道高文新是什么意思,不过他还是忍不住看了高文新一眼,心中感叹,政客果然没一个是简单的啊!这个高文新很明显就是掌握了他付新还没有说完的这个节奏。
付新着实还没有说完呢,刚刚他仅仅是讲了tcp/ip协议的产生背景。
付新继续说道:“tcp/ip协议不是tcp和ip这两个协议的合称,而是指因特网整个tcp/ip协议族。从协议分层模型方面来讲,tcp/ip由四个层次组成:网络接口层、网络层、传输层、应用层。
网络接口层又称链路层,它实际上并不是因特网协议组中的一部分,但是它是数据包从一个设备的网络层传输到另外一个设备的网络层的方法。
这个过程能够在网卡的软件驱动程序中控制,也可以在韧体或者专用芯片中控制。这将完成如添加报头准备发送、通过物理媒介实际发送这样一些数据链路功能。另一端,链路层将完成数据帧接收、去除报头并且将接收到的包传到网络层。
然而,链路层并不经常这样简单。它也可能是一个虚拟专有网络(vpn)或者隧道,在这里从网络层来的包使用隧道协议和其他(或者同样的)协议组发送而不是发送到物理的接口上。
vpn和隧道通常预先建好,并且它们有一些直接发送到物理接口所没有的特殊特点,例如,它可以加密经过它的数据。
由于现在链路“层”是一个完整的网络,这种协议组的递归使用可能引起混淆。但是它是一个实现常见复杂功能的一个优秀方法。尽管,它需要注意预防一个已经封装并且经隧道发送下去的数据包进行再次地封装和发送。
网络接口层与osi参考模型中的物理层和数据链路层相对应。网络接口层是tcp/ip与各种lan或wan的接口。
网络接口层在发送端将上层的ip数据报封装成帧后发送到网络上;数据帧通过网络到达接收端时,该结点的网络接口层对数据帧拆封,并检查帧中包含的mac地址。如果该地址就是本机的mac地址或者是广播地址,则上传到网络层,否则丢弃该帧。
当使用串行线路连接主机与网络,或连接网络与网络时,例如,主机通过modem和电话线接入inter,则需要在网络接口层运行slip或ppp协议。
slip(serial_line_inter_protocol)协议提供了一种在串行通信线路上封装ip数据报的简单方法,使用户通过电话线和modem能方便地接入tcp/ip网络。
ppp(point_to_point_protocol)协议是一种有效的点到点通信协议,解决了slip存在的上述问题,即可以支持多种网络层协议(如ip、ipx等),支持动态分配的ip地址;并且ppp帧中设置了校验字段,因而ppp在网络接口层上具有差错检验能力。
数据链路层是负责接收ip数据包并通过网络发送,或者从网络上接收物理帧,抽出ip数据包,交给ip层。
arp是正向地址解析协议,通过已知的ip,寻找对应主机的mac地址。
rarp是反向地址解析协议,通过mac地址确定ip地址。比如无盘工作站还有dhcp服务。
常见的接口层协议有:
、token_、x.25、frame_relay、hdlc、ppp、atm等。
网络层是osi参考模型中的第三层,介于运输层和数据链路层之间,它在数据链路层提供的两个相邻端点之间的数据帧的传送功能上,进一步管理网络中的数据通信,将数据设法从源端经过若干个中间节点传送到目的端,从而向运输层提供最基本的端到端的数据传送服务。
主要内容有:虚电路分组交换和数据报分组交换、路由选择算法、阻塞控制方法、x。25协议、综合业务数据网(isdn)、异步传输模式(atm)及网际互连原理与实现。
网络层的目的是实现两个端系统之间的数据透明传送,具体功能包括寻址和路由选择、连接的建立、保持和终止等。它提供的服务使传输层不需要了解网络中的数据传输和交换技术。
网络层关系到通信子网的运行控制,体现了网络应用环境中资源子网访问通信子网的方式。网络层从物理上来讲一般分布地域宽广,从逻辑上来讲功能复杂,因此是osi模型中面向数据通信的下三层(也即通信子网)中最为复杂也最关键的一层。
网络层负责相邻计算机之间的通信。其功能包括三方面。
第一,处理来自传输层的分组发送请求,收到请求后,将分组装入ip数据报,填充报头,选择去往信宿机的路径,然后将数据报发往适当的网络接口。
第二,处理输入数据报:首先检查其合法性,然后进行寻径――假如该数据报已到达信宿机,则去掉报头,将剩下部分交给适当的传输协议;假如该数据报尚未到达信宿,则转发该数据报。
第三,处理路径、流控、拥塞等问题。
网络层包括:ip(inter_protocol)协议、icmp(inter_control_message_protocol)
控制报文协议、arp(address_resolution_protocol)地址转换协议、rarp(reverse_arp)反向地址转换协议。
ip是网络层的核心,通过路由选择将下一条ip封装后交给接口层。ip数据报是无连接服务。
icmp是网络层的补充,可以回送报文。用来检测网络是否通畅。
ping命令就是发送icmp的echo包,通过回送的echorela
(本章未完,请点击下一页继续阅读)