TCP/IP详解 卷一 笔记

第01 章 概述

  • OSI 7层模型:
    物理层:指定连接器、数据速率和如何在某些介质上进行编码。本层也描述低层的差错检测和纠正、频率分配。
    链路层:指定经过单一链路通信的方法,包括多个系统共享同一介质时的“介质访问”控制协议。本层通常包括差错检测和链路层地址格式。
    网络层:指定经过潜在不同类型链路层网络的多跳通信方法。对于分组网络,它描述了抽象的分组格式和标准的编址结构。
    传输层:指定运行在相同计算机系统中多个程序之间的连接或关联的方法。如果在其他地方没有实现,本层可能实现可靠的传递。
    会话层:指定由多个连接组成一个通信绘画的方法。它可能包括关闭连接、重启连接和检查点进程。
    表示层:指定针对应用的数据表示格式和转换规则的方法。典型的例子如字符从EBCDIC转换为ASCⅡ码
    应用层:指定完成某些用户初始化任务的方法。应用协议通常由应用开发者设计和实现。
  • ARPANET参考模型:
    链路层(辅助):用于网络层到基于多接入链路层网络的链路层的地址映射的非正式的“层”。例如ARP。
    网络层:定义抽象的数据报和提供路由。IP、IPv6
    网络层(辅助):协助完成网络层设置、管理和安全的非正式的“层”。ICMP、IGMP、IPsec
    传输层:提供在抽象的、由应用管理的“端口”直接的数据交换。可能包括差错和流量控制。TCP、UDP、SCTP、DCCP
    应用层:实质上是Internet 兼容的任何应用。包括HTTP、DNS、DHCP

第02章 Internet 地址结构

  • IPv6:地址长度为128bit(是IPv4 32bit的4倍)。表示方法是采用称为块或字段的4个十六进制数,中间由冒号分割。例如:5f05:2000:80ad:5800:0058:0800:2023:1d71。

    1). 一些简化表示规则[RFC4291]:
    ①一个块中的前导0可以不必写。
    ②全0的块可以省略,并用::代替,但为避免歧义,一个IPv6地址中只能用一次:: 。
    ③IPv6中可以嵌入IPv4地址,紧接IPv4部分地址快的值应该是ffff,IPv4部分用IPv4的表达方法。被称为“IPv4映射的IPv6地址”。例如:::ffff:10.0.0.1
    ④IPv6地址的低32位通常用IPv4的表示方法。被称为“IPv4兼容的IPv6地址”(用于过渡)。例如:::1.2.240.1

    2).兼容上面规则的[RFC5952]:
    ①前导的0必须压缩。
    ②::只能用于影响最大的地方(压缩最多0)。但并不只针对16位的块,如果多个块中包含等长度的0,顺序靠前的块替换为::。
    ③a到f的十六进制数字,要用小写表示。
  • 分类寻址:
    最初的时候,每个单播IP地址有一个网络部分,用于识别接口使用的IP地址在哪个网络中可被发现;还有一个主机地址,识别网络部分给出的网络中的特定主机。
    基于当前或预计的主机数量,将不同大小的IP地址空间,分配给不同的站点。(P23分类图)
  • 子网寻址:
    在一个站点接入Internet 后为其分配一个网络号,然后由站点的管理员进一步划分本地的子网数。
    子网寻址为IP地址结构增加了一个额外部分,但没有为地址增加长度。因此,一个站点管理员可以在子网数和每个子网中预期的主机数之间折中。提高了灵活性。
    子网之前,之间由分类可以知道哪部分是主机号,哪部分是网络号(区分A\B\C类地址就好)。但现在需要子网掩码来区分。
  • 子网掩码:
    由一台主机或路由器使用的分配位,确定如果从一个IP地址中获得网络和子网信息。
    可以是静态的,也可以是动态的(DHCP)。
    IP地址和掩码按位与,得到网络/子网
    IP地址和取反的掩码按位与,得到主机号
    可变长度子网掩码(VLSM)
  • 广播地址
    子网广播地址构建方式:对子网掩码取反,然后和改子网内的IP地址按位或得到广播地址。
  • CIDR:
    不只是单个B类或C类网络号可以分给站点。使用CIDR,未经过预定义的任何地址范围可作为一个类的一部分,但需要一个类似于子网掩码的掩码,称为CIDR掩码。该掩码不再局限于一个站点,而是对全球性路由系统都是可见的。

第03章 链路层

  • PDU(Protocol Data Unit):协议数据单元是指对等层次之间传递的数据单位。
    物理层的 PDU是数据(bit)
    数据链路层的 PDU是数据(frame)
    网络层的PDU是数据包、分组(packet)
    传输层的 PDU是数据(segment)
    其他更高层次的PDU是报文(message)
  • 帧格式通常支持可变的的帧长度,范围从几字节到几千字节。范围的上限称最大传输单元(MTU)
  • 以太网:DEC、Intel、Xerox提出,IEEE(稍微修改)采纳为802.3标准。
  • CSMA/CD:冲突检测的载波侦听多路访问
    以太网中,多个站共享一个网络,需要在每个以太网接口实现一种分布式算法。
    波侦听:先检测目前网络上正在发送的信号,并在网络的空闲时发送自己的帧。
    冲突检测:如果其他站刚好正在同时发送,重叠的电信号被检测为一次冲突。冲突发生时,每个站等待一个随机时间,然后重发。如果在尝试一定次数(传统以太网16次)后还是冲突,表示超时。
    随机等待的时间的选择,会依据一个统一的概率分布,随后每个冲突检测到的时间长度加倍。
  • 像CSMA/CD这样的访问方式,更为正式的名称是:介质访问(MAC)协议。
  • 10BASE-T:双绞线以太网。T表示双绞线,10表示10Mbps,MAC协议是CSMA/CD。
  • 以太网帧格式(图P58)

    Preamble(前导码):用于接收方与发送方的同步,7个字节,每个字节的值固定为0xAA。

    SFD(start frame delimiter):帧起始定界符,用于标识一个以太网帧的开始,值固定为0xAB.

    DST 和 SRC: 分别表示标识目的地址源地址。它们均为6个字节长。
    如果传输出去的目标地址第一位是0,则表示这是一个普通地址;如果是1, 则表示这是一个组地址。

    Length/Type :通常这个字段用于指定报文头后所接的数据类型。
    通常使用的值包括:IPv4(0x0800),IPv6(0x86DD),ARP(0x0806)。而值0x8100代表一个Q-tagged 帧(802.1q)。
    通常一个基础的以太网帧长为1518字节,但是更多的新标准把这个值扩展为2000字节。

    MAC Client Data:数据主体,最小长度为48字节(加上帧头12字节,CRC4字节刚好64字节)。
    当数据主体小于48字节时,会添加pad字段。选取最小长度是出于冲突检测的考虑(CSMA/CD)。而数据字段最大长度为1502字节。

    FCS(Frame Check Sequence):也叫CRC(Cyclic Redundancy Check),CRC是差错检测码,用来确定接收到的帧比特是否正确。


    802.3 frame format
  • 以太网帧有最小和最大尺寸:
    最小的帧是64字节,此时数据区长度最小是48字节。如果有效载荷实在很小,填充字节(0)到尾部保证达到最小长度。
    传统以太网的最大帧长度为:1518字节(包括4字节CRC,14字节头部)。因为MTU的大小限制为1500字节。
    为提高效率,有“以太网巨型帧”,通常允许帧尺寸高达9000字节。超级巨型帧还可以超过9000字节。但这些较大的帧无法和1518字节的互操作。
  • 交换机本质上是更高性能的网桥。IEEE 802.1d规定了网桥的操作。
    网桥或交换机用于连接多个物理的链路层网络或成组的站。
  • 每个网桥经过一定时间对域外MAC地址的“学习”后,会知道每个站可以由哪个端口到达。每个交换机基于每个端口的列表被存储在一张表中。
  • 无线局域网:IEEE 802.11(Wi-Fi)。

第04章 地址解析协议

猜你喜欢

转载自blog.csdn.net/weixin_39731083/article/details/81540619