因特网原理
IP
网络号+主机号 32bit=8bit, 8bit, 8bit, 8bit
ip地址的分类
首先记住不论什么地址 不能全为1或者全为0
a类
网络号1字节 主机号3字节,并且网络号的第一位一定要是1
网络号个数:2^7(减去第一位的固定) - 1(全1) -1(全0)
主机号:2^24 - 2
b类
网络号的前两位一定要是10
网络号个数:2^14(减去第一二位的固定) -1(全0)
主机号:2^16 - 2
c类
网络号的前三位一定要是110
网络号个数:2^21(减去第一二三位的固定) -1(全0)
主机号:2^8 - 2
使用范围
一共32个字节,8字节一组
看上图 所以127不属于ip的可分配分类中
ip数据报格式
p.s. n位可以表示多少种数据:2^(n-1) + ... + 2^0
即 2^n - 1
- 一行32位 源ip地址和目的ip地址都占一行 也就是4B/字节。
- 1字节一般表示成8位,因为4位的二进制等于一位的十六进制,所以1字节也可表示为两位的十六进制。
- 规定首部的固定部分是20个字节
ttl
其实是…time to live 生存时间!也就是一个count 每经过一个路由 count-1 为0时还没到达终点即宣告失败把包丢弃
ip数据报的分片与重组
当一个IP数据报的总长度超过MTU值时,每个分片的数据部分的长度应该是MTU-20后向下取8的整数倍
about 路由器
- 路由器仅根据网络号来转发分组
- 一个路由器至少应该有2个不同的ip地址
- 路由协议:使用传输层的udp进行传输 每隔30s会向相邻路由器广播自己的整个路由表
ip分组的转发
直接交付 间接交付
- 特定主机路由:单独一个指定ip地址 那掩码肯定是255.255.255.255
- 默认路由:多个下一跳相同的表的合并 该行对应的掩码是0.0.0.0 即所有走到这个选择的ip地址都属于“这儿没找到”网段
IPv6
32bit->128bit
还有格式
IPv4向IPv6过渡的方法:
(1)双栈技术:主机或路由器同时装有IPV4和IPV6两个协议栈,因此主机既能和IPV4通 信, 也能和IPV6通信。
(2)隧道技术:在IPV6分组进入IPV4网络时,将IPV6分组封装成IPV4分组; 当 封装成IPV4分组 离开IPV4网络时,再装数据部分(IPV6部分)转发给目的节点。
ICMP
Internet Control Message Protocol
它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。
控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。//注意只有一个包 所以并不表示网络快不快
“IP协议并不是一个可靠的协议,它不保证数据被送达,那么,自然的,保证数据送达的工作应该由其他的模块来完成。其中一个重要的模块就是ICMP(网络控制报文)协议。
当传送IP数据包发生错误--比如主机不可达,路由不可达等等,ICMP协议将会把错误信息封包,然后传送回给主机。给主机一个处理错误的机会,这 也就是为什么说建立在IP层以上的协议是可能做到安全的原因。”
常用的ping, tracert就是基于此
ref: https://blog.csdn.net/inject2006/article/details/2139149
其中我还不大明确的是icmp数据包与ip数据包之间的关系
子网划分
从主机号中划出一部分给子网 目的:使多个物理网络可以共用一个网络前缀。
如上,子网掩码占了主机号的三位,则可以把网络划分为2^3=8个子网段
注意!一般全0和全1的主机地址不分配,所以要把划分的网段数-2,每个网段所容纳主机数也要对应-2
广播地址:主机号全部为1(B类地址的最后一大节肯定是255了)
CIDR地址块
即形如 202.119.230.0/24 24则表示网络掩码到第三大位
则表示的地址块有 2^(32 - 24) = 2^8个地址
哇给大家分网络地址块的…真的理解了我好一会…
比如某机构获得了拥有地址块202.192.0.0/16 需要把地址分给以上四个大学。那么16在这里已经么有什么意义了~分给大学地址的掩码长度肯定会小于16,按先后顺序,倒着来占“子网号”的坑
-------这种网络块的地址就称为网络地址,它是一个ip区间,又称ip地址空间~
网络聚合
VPN工作原理
隧道传输(IP-in-IP封装 所以要发的内容会被加密后再封到数据报中) 与 加密技术
NAT: network address translation用来解决本地编址的内部网络与外网通信的问题
在专用网连到外网的服务器上装NAT软件 它能帮忙转换~
端口及套接字 // 传输层会处理到端口的消息
介绍了一些常用协议用的是tcp还是udp服务及其端口
一般而言 需要可靠的都是tcp 比如http ftp telnet ; dns就是udp 还有路由选择RIP
三次握手连接 四次握手释放
TCP可靠传输
序号确认机制
超时重传机制
tcp还可以流量控制和堵塞控制