OSI分层 | 功能 | TCP/IP协议簇 | TCP/IP分层 | 五层模型 |
---|---|---|---|---|
应用层 | 文件传输、电子邮件、编程 文件服务、虚拟终端服务器 |
TFTP/HTTP/SNMP/FTP网络 /SMTP/DNS/Telnetsocket |
应 用 层 | 应用层 |
表示层 | 数据格式化、代码转换、数据加密 | 无 | 应 用 层 | 应用层 |
会话层 | 解除或创建与别的接点的联系 | 无 | 应 用 层 | 应用层 |
传输层 | 提供端对端的接口 | TCP/UDP | 传 输 层 | 传输层 |
网络层 | 为数据包选择路由 | IP/ICMP/RIP/OSPF/BGP/IGMP | 网际互 联层 | 网络层 |
数据链路层 | 传输有地址的帧以及错误检测功能 | SLIP/CSLIP/PPP/ARP/RARP/MTU | 网 络 接 口 层 | 数据链路层 |
物理层 | 以二进制数据形式在函数 物理媒体上传输数据加密 |
ISO2110/IEEE802/IEEE802.2 | 网 络 接 口层 | 物理层 |
图例:spa
上层传输数据只与相邻上下层有关系。TCP及如下层是由操做系统内核实现,是处理通讯细节。而应用层程序是经过socket编程实现的,处理的是应用程序细节。操作系统
地址格式为:IP地址=网络地址+主机地址 或 IP地址=网络地址+子网地址+主机地址。计算机网络
地址类型:最初设计互联网络时,为了便于寻址以及层次化构造网络,每一个IP地址包括两个标识码(ID),即网络ID和主机ID。同一个物理网络上的全部主机都使用同一个网络ID,网络上的一个主机(包括网络上工做站,服务器和路由器等)有一个主机ID与其对应。IP地址根据网络ID的不一样分为5种类型,A类地址、B类地址、C类地址、D类地址和E类地址设计
A类 :0.0.0.0 - 127.255.255.255(0段和127段不使用,注意,数字0和 127不做为A类地址,数字127保留给内部回送函数,而数字0则表示该地址是本地宿主机,不能传送。10.0.0.0~10.255.255.255私有段)
一个A类IP地址由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”, 地址范围从1.0.0.0 到126.0.0.0。可用的A类网络有126个,每一个网络能容纳1亿多个主机。
B类:128.0.0.0 - 191.255.255.255(172.16.0.0~172.31.255.255 私有段)
一个B类IP地址由2个字节的网络地址和2个字节的主机地址组成,网络地址的最高位必须是“10”,地址范围从128.0.0.0到191.255.255.255。可用的B类网络有16382个,每一个网络能容纳6万多个主机 。
C类:192.0.0.0 - 223.255.255.255(192.168.0.0~192.168.255.255私有段)
一个C类IP地址由3字节的网络地址和1字节的主机地址组成,网络地址的最高位必须是“110”。范围从192.0.0.0到223.255.255.255。C类网络可达209万余个,每一个网络能容纳254个主机。
D类:用于多点广播
E类:保留
子网掩码:255.0.0.0
例:IP 1.1.1.1,子网掩码255.0.0.0可简记为1.1.1.1/8
同理IP 128.1.1.1,子网掩码255.255.0.0可简记为128.1.1.1/16
-----------------------------------------------------------------
一个字节(8位二进制)的范围
00000000 - 11111111
0 - 255
00000000 - 01111111
0 - 127
A类地址:用二进制表示时,最左的一位老是0,
范围是:00000001.00000000.00000000.00000000~01111111.11111111.11111111.11111111
十进制:1.0.0.0~127.255.255.255
ip地址由网络号和主机号组成,A类网址的默认子网掩码是255.0.0.0
内网段:10.0.0.0--10.255.255.255(一个A类地址)
B类地址:最左两位老是10,
范围是:10000000.00000000.00000000.00000000~10111111.11111111.11111111.11111111
十进制:128.0.0.0~191.255.255.255
默认子网掩码是255.255.0.0
内网段:172.16.0.0--172.31.255.255(十六个B类地址)
C类地址:最左三位老是110
192.0.0.0~223.255.255.255
内网段:192.168.0.0--192.168.255.255(256个C类地址)
特殊IP:主机部分全为0的IP地址保留用于网络地址,主机部分全为1的IP地址保留为广播地址,224--255部分保留做为组播和实验目的。 同时注意IP地址分配时不能使用最末位为0和255的地址,由于这是广播地址,普通计算机上不能使用,但可用于网关和路由器上。
---------------------------------------------------------------
网络协议和通讯原理
1.物理层:工做设备是光缆、电缆、双绞线、无线电波等;传输0或1电信号
2.连接层:以太网协议,统一电信号分组方式,以帧为单位,帧分为标头和数据
标头长度固定18字节,标头中含有接收方MAC地址,数据长度46~1500字节
MAC地址,MAC地址长度48个二进制位,一般用六组,十二个16进制数表示
广播:子网内,数据包是广播给子同一子网内全部计算机的,是否接受由接受方经过标头中MAC地址与自身MAC地址判断
3.网络层:IP协议,结合子网掩码区分发送方和接收方是否在同一子网,工做设备是路由器
ARP协议(也可将其看做链路层协议),经过IP地址得到MAC地址的协议
4.传输层:TCP和UDP,端口直接通讯
5.应用层:不一样应用之间表示数据的方式不一样,规定处理数据的方式。
为何须要NAT
好比有网络A和网络B,网络A的IP地址范围为“192.168.1.1~192. 168.1.254”,子网掩码为255.255.255.0;网络B的IP地址范围为“192.168.2.1~192.168.2.254”,子网掩码为255.255.255.0。在没有路由器的状况下,两个网络之间是不能进行TCP/IP通讯的,即便是两个网络链接在同一台交换机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)断定两个网络中的主机处在不一样的网络里。而要实现这两个网络之间的通讯,则必须经过网关。
子网掩码是一个应用于TCP/IP网络的32位二进制值,它能够屏蔽掉ip地址中的一部分,从而分离出ip地址中的网络部分与主机部分,基于子网掩码,管理员能够将网络进一步划分为若干子网。
例子
假设有一个I P 地址:192.168.0.1
子网掩码为:255.255.255.0
化为二进制为:I P 地址11000000.10101000.00000000.00000001
子网掩码11111111.11111111.11111111.00000000
将二者作'与'运算得:11000000.10101000.00000000.00000000
将其化为十进制得:192.168.0.0
这即是上面ip的网络地址,主机地址以此类推(只需先把子网掩码取'反',在作'与')。
小技巧:因为观察到上面的子网掩码为C类地址的默认子网掩码(即未划分子网),即可直接看出网络地址为ip地址的前三部分,即前三个字节。
网段(network segment)通常指一个计算机网络中使用同一物理层设备(传输介质,中继器,集线器等)可以直接通信的那一部分。例如,从192.168.0.1到192.168.255.255这之间就是一个网段。
一般使用同一物理层的设备之间必然经过相同的传输介质直接相互链接,(如交叉双绞线直接链接的两台主机),可是两组其传输介质并不是直接相连的网络设备,若是它们的传输介质经过工做在物理层的扩展设备如中继器和集线器等转接链接,则仍然被视为同一物理层中的设备,是一个而非两个网段。另外,工做在数据链路层或更高层的设备如网桥、交换机、路由器等等,由它们链接起来的两组设备仍然分别处于各自独立的物理层,所以是两个网段。
网桥实现两个网段的桥接功能,同时也起到重发器的做用,即延长线路距离及信号再生和转发。交换机原理上也工做在数据链路层,可实现多个网段的信息交换,网桥和交换机能够隔离两个网段,能够防止在某一个网段的数据被无条件地广播到另外一网段,这是由于网桥接到数据帧后,判断接收到的数据帧目的地址是否和源地址在同一网段,是的话,就再也不转发。交换机被称为多端口网桥,交换机的每一个端口能够链接一个网段。
https://www.zhihu.com/question/21546408
做者:不求东西
连接:https://www.zhihu.com/question/21546408/answer/28155896
来源:知乎
著做权归做者全部,转载请联系做者得到受权。
一. 总体与局部
信息传递时候,须要知道的实际上是两个地址:
- 终点地址(Final destination address)
- 下一跳的地址(Next hop address)
IP地址本质上是终点地址,它在跳过路由器(hop)的时候不会改变,而MAC地址则是下一跳的地址,每跳过一次路由器都会改变。
这就是为何还要用MAC地址的缘由之一,它起到了记录下一跳的信息的做用。
注:通常来讲IP地址通过路由器是不变的,不过NAT(Network address translation)例外,这也是有些人反对NAT而支持IPV6的缘由之一。
二. 分层实现 若是在IP包头(header)中增长了”下一跳IP地址“这个字段,在逻辑上来讲,若是IP地址够用,交换机也支持根据IP地址转发(如今的二层交换机不支持这样作),其实MAC地址并非必要的。 但用MAC地址和IP地址两个地址,用于分别表示物理地址和逻辑地址是有好处的。这样分层可使网络层与链路层的协议更灵活地替换,网络层不必定非要用『IP』协议,链路层也不必定非用『以太网』协议。 这就像OSI七层模型,TCP/IP五层模型其实也不是必要的,用双层模型甚至单层模型实现网络也不是不能够的,只是那样作很蛋疼罢了。