IP地址
什么是ip地址
ip协议给因特网上的每台计算机和其它设备都规定的地址,是网络中每一台主机的唯一标识。
有了这种地址,才保证用户在连网的计算机上操作时,能够高效而且方便地从很多计算机中选出自己所需的对象来。
IP协议的分类
ipv4
IP地址是一个4字节,32位的整数产生的IP地址个数:2^32大约等于43亿。
ipv6
IP地址是一个16字节,128位的整数产生的IP地址个数:2^128。
DHCP/NAT协议
43亿IP地址不能满足现如今的使用,所以出现了IPv6网络协议版本。
但是,IPv6网络协议版本,不兼容IPv4,所以增加了DHCP/NAT协议。
DHCP
动态主机配置协议。
主要是应用在大型局域网环境下,为主机分配IP地址,使网络中的主机动态获取IP地址。
NAT
网络地址转化。
当在专用网内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),但现在又想和因特网上的主机通信(并不需要加密)时,可使用NAT方法。
端口
在一台主机上用于标识一个进程,网卡接收到网络中的发往当前主机的一条数据,这条数据由当前主机上哪个进程处理是由端口决定的。
一个端口号只能被一个进程使用,一个进程可以使用多个端口。
用端口来标识进程
为什么用端口来标识进程而不是pid?
因为虽然pid可以标识进程,但是如果进程重启它的pid会发生变化,pid并不是真正固定的。
网络通信协议
网络中数据传输格式的约定
协议分层
根据服务和所使用的协议将网络通信环境划分为多层。
OSI七层模型
国际标准化组织ISO于1984年提出OSIRM(OpenSystemInterconnectionReferenceModel,开放系统互连参考模型)。OSI参考模型很快成为了计算机网络通信的基础模型。
OSI参考模型具有以下优点:
- 简化了相关的网络操作;
- 提供了不同厂商之间的兼容性;
- 促进了标准化工作;
- 结构上进行了分层;
- 易于学习和操作。
OSI参考模型各个层次的基本功能如下:
物理层: 在设备之间传输比特流,规定了电平、速度和电缆针脚。
数据链路层:将比特组合成字节,再将字节组合成帧,使用链路层地址(以太网使用MAC地址)来访问介质,并进行差错检测。
网络层:提供逻辑地址,供路由器确定路径。
传输层:提供面向连接或非面向连接的数据传递以及进行重传前的差错检测。
会话层:负责建立、管理和终止表示层实体之间的通信会话。该层的通信由不同设备中的应用程序之间的服务请求和响应组成。
表示层:提供各种用于应用层数据的编码和转换功能,确保一个系统的应用层发送的数据能被另一个系统的应用层识别。
应用层:OSI参考模型中最靠近用户的一层,为应用程序提供网络服务。
TCP/IP五层模型
TCP/IP模型同样采用了分层结构,层与层相对独立但是相互之间也具备非常密切的协作关系。
TCP/IP模型的核心是网络层和传输层:
网络层解决网络之间的逻辑转发问题,传输层保证源端到目的端之间的可靠传输。最上层的应用层通过各种协议向终端用户提供业务应用。.
数据封装与分用
网络字节序
cpu在内存中对数据进行存取的顺序。
大端低地址存高位
小端低地址存低位
主机字节序对于网络通信的影响
不同字节序的主机进行数据传输可能会造成数据二义
解决方案
在网络通信中制定字节序标准。