1.IP地址概念
IP地址主要用于标识网络主机、其他网络设备(如路由器)的网络地址。
简单说,IP地址用于定位主机的网络地址
格式
IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)
通常用“点分十进制”的方式来表示,即 a.b.c.d 的形式(a,b,c,d都是0~255之间的十进制整数)
特殊IP
127.*
的IP地址用于**本机环回(loop back)**测试,通常是127.0.0.1
2 .端口号
概念
在网络通信中,IP地址用于标识主机网络地址,端口号可以标识主机中发送数据、接收数据的进程。
简单说:端口号用于定位主机中的进程,描述了一个主机上的某个应用程序
端口号本质上是一个2个字节(16)的无符号整数
注意事项
两个不同的进程,不能绑定同一个端口号,但 一个进程可以绑定多个端口号
3 .协议
简单来说:进行有效地通信,前提就是能够明确通信的协议,本质上就是约定,发出来的数据是啥样的格式,接受方按照对应的格式进行解析
比如:网络通信的时候,本质上传输的是光信号和电信号,通过光信号的频率(高频率/低频率)电信号的电平(高电平/低电平)来表示
4.协议分层
举个例子来说:比如网络通信这个过程,其实很复杂,里面有很多很多的细节,如果只是通过一个
协议,来约定所有的细节,这个协议就会非常庞大复杂;因此更好的办法就是把
一个大复杂的协议,折成多个小的,更简单的协议,每个协议,负责一部分工作
好处1:每层协议不需要理解其他协议层的细节,每个过程互不干涉(更好的进行了封装)
好处2:把对应层的协议替换成其他协议(更好的进行解耦合)
TCP/IP五层
物理层:网络中的硬件设备~~例如网线/网卡......针对硬件设备的约定,就是物理层协议所负责的范畴,需要保证所有的主机和网络设备之间,都是相互匹配的
数据链路层:负责完成相邻的两个设备之间的通信的
网络层:负责点到点之间的通信,网络中的任意节点,到任意节点之间的通信(不一定是想邻 的,更多的是指不相邻的)
网络层就负责在这两个点之间,规划出一条合适的路线(实际的网络环境结构非常复杂,两个点之间的路线不止一条,所以就需要规划出最合适的一条)
传输层:负责端与端之间的通信(起点和终点,只关注结果,不关注过程)
应用层:和应用程序密切相关的,你传输的这个数据是干啥用的,不同的应用的程序就有不同的用途
网络设备所在分层
一台主机,其实就对应了物理层到应用层五层
一台路由器,主要就是物理层到网络层(主要实现了物理层,数据链路层,网络层)
一台交换机:主要就是物理层和数据链路层(主要实现了物理层,数据链路层)
封装与分用
下面的图解是封装的过程(分用的过程就是依次从物理层依次“拆开”)