[笔记]计算机网络·链路层

Plux posted @ 2012年1月02日 09:42 in Default with tags notes computer network , 1598 阅读

 

对计算机网络还很不了解,最近要考试了,于是翻了一下笔记,复习一下,不知道笔记内容有没有错?

 

数据链路层的主要任务是将一个原始传输设施转变成一条逻辑的传输线路,在这条传输线路上,所有未检测出来的错误会反映到网络层上。

数据链路层完成这项任务的做法是:让发送方将输入的数据拆开,分装到数据帧(Data frame,通常为几百个或者几千个字节)中,然后顺序地传送这些数据帧。
如果是可靠的服务,则接收方必须确认每一帧都已经正确地接收到了,即给发送方送回一个确认帧(acknowledgement frame)。
 
数据链路(data link) 除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。
 
 
解决成帧过程中的透明传输问题
• 发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(其十六进制编码是1B)。
• 字节填充(byte stuffing)或字符填充(character stuffing)——接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。
如果转义字符也出现数据当中,那么应在转义字
符前面插入一个转义字符。当接收端收到连续的
两个转义字符时,就删除其中前面的一个。
 
数据链路层两个子层:
• 逻辑链路控制(LLC: Logical Link Control)子层
• 媒体接入控制(MAC: Medium Access Control)子层。
 
以太网提供的服务
• 以太网提供的服务是不可靠的交付,即尽最大努力的交付。
• 当目的站收到有差错的数据帧时就丢弃此帧,其他什么也不做。差错的纠正由高层来决定。
• 如果高层发现丢失了一些数据而进行重传,但以太网并不知道这是一个重传的帧,而是当作一个新的数据帧来发送。
 
载波监听多点接入/碰撞检测(CSMA/CD)
Carrier Sense Multiple Access with Collision Detection
载波监听:总线上并没有什么“载波”。因此, “载波监听”就是用电子技术检测总线上有没有其他计算机发送的数据信号。
“碰撞检测”就是计算机边发送数据边检测信道上的信号电压大小。当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。
 
二进制指数类型退避算法(truncated binary exponential type):碰撞的站在停止发送数据后,要推迟(退避)一个随机时间才能再发送数据。
• 确定基本退避时间,一般是取为争用期 2τ。
• 定义重传次数 k ,k ≤ 10,即k = Min[重传次数, 10]从整数集合[0,1,..., (2k −1)]中随机地取出一个数,记为 r。重传所需的时延就是 r 倍的基本退避时间。
• 当重传达 16 次仍不能成功时即丢弃该帧,并向高层报告。
 
争用期的长度
• 以太网取 51.2 μs 为争用期的长度。对于 10 Mb/s 以太网,在争用期内可发送512 bit,即 64 字节。
• 以太网在发送数据时,若前 64 字节没有发生冲突,则后续的数据就不会发生冲突。
最短有效帧长:
• 如果发生冲突,就一定是在发送的前 64 字节之内。
• 由于一检测到冲突就立即中止发送,这时已经发送出去的数据一定小于 64 字节。
• 以太网规定了最短有效帧长为 64 字节,凡长度小于 64 字节的帧都是由于冲突而异常中止的无效帧。
 
PPP属于广域网范畴,MAC是局域网范畴,按实际情况和环境就选用不同的协议,PPP支持的网络结构只能是点对点,mac支持多点对多点。
 
以太网的MAC帧
 
格式: [目的:6][源:6][类型:2][数据:46-1500][FCS:4]
类型字段用来标志上一层使用的是什么协议,以便把收到的MAC帧的数据上交给上一层的这个协议。
在帧的前面插入的 8 字节中的第一个字段共 7 个字节,是前同步码,用来迅速实现 MAC 帧的比特同步。
第二个字段是帧开始定界符,表示后面的信息就是MAC帧。
 
• 有效的 MAC 帧长度为 64 ~ 1518 字节之间。
• 对于检查出的无效 MAC 帧就简单地丢弃。以太网不负责重传丢弃的帧。
 
  • 无匹配
  • 无匹配

登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter