端口号
端口号是传输层,tcp或udp来识别服务的
端口号在0~1024之间的端口为通用端口,遵循相同的标准化方法
端口号在1024~49151之间的端口为注册端口,用于特定用途
端口号在49152~65535之间的端口为动态端口,共有任何需求的应用程序使用
Telnet:23 远程登录协议
Smtp:25 简单邮件管理协议
http:80 超文本传输协议
Snmp:161.162 简单网络管理协议
ftp:21 文件传输协议
Ssl :22安全套接字层协议
Dns:53 域名解析协议
可靠传输的实现
超时重传:
上面滑动窗口的过程中的最后,介绍了发送方如果收不到确认得到情况,会停止等待,并且超时重传
流量控制:
数据的传送与接受过程中很可能出现接收方来不及接受的情况,这时就需要对发方进行控制以免数据丢失,上面介绍了滑动窗口,如果窗口越大发送速度也就越大,tcp可以使用控制滑动窗口的大小来进行控制速度,从而控制流量
协议的组成
1、同步:实现顺序的详细说明
2、语法:发送数据或控制信息的格式
3、根据控制信息,做出的响应
Osi模型七层
物理层
数据链路层
网络层
传输层
会话层
表示层
应用层
四层模型
网络接口层
网络层
传输层
应用层
实际用到的五层
物理层
数据链路层
网络层
传输层
应用层
传输层
传输层定义了一些传输数据的协议和端口号,作用是将下层接受到的数据进行分段和传输,到达目的地址后再将数据进行重组
传输层上的协议
传输控制协议(tcp)
用户数据报协议(udp)
安全套接字层(ssl)
传输层安全(tls)
应用层
应用层是最靠近用户的osi层,提供文件传输,消息交换,终端会话以及更多功能
应用层上的协议:
文件传输协议(ftp)
简单网络管理协议(snmp)
简单邮件传输协议(smtp)
超文本传输协议(http)
中继器----物理层
中继器完成网络线路的链接对衰减的信号进行放大,保持与原数据相同
集线器---物理层
对接收到的信号进行再生整形放大,以扩大网的传输距离
交换机---数据链路层
网桥:早期的二层网络设备,用来连接不同网段,有独立的交换信息,不是共享一条总线。
交换:把要传输的信息,发送到符合要求的线路上。
三层交换机--网络层
交换机+部分路由功能(二层交换技术+三层转发技术)
四层交换机--传输层
可根据tcp/udp端口号来区分数据包的应用类型,从而实现应用层的访问控制和服务质量保证
路由器--网络层
最重要的网络设备,连接多个网络 或多个网段,将不同网络或网段之间传输的数据进行转发
防火墙--网络层/应用层
指的是一个由软件和硬件组合而成,在内部网和外部网之间,专用网与公共网之间的界面上构造的保护屏障
下一代防火墙
可以全面应对应用层威胁的高性能防火墙
地址解析协议(arp)
在局域网中,当主机或其他网络设备有数据要发送给另一个主机或设备时,它需要知道对方的网络层地址(即IP地址)。但是仅仅有IP地址是不够的,因为IP数据报文必须封装成帧才能通过物理网络发送,因此发送站还必须有接受站的物理地址,所以需要一个从IP地址到物理地址的映射,arp就是实现这个功能的协议
原理
主机以广播的方式,发送包含目标ip地址的包到网络上的所有主机,然后接受返回信息,以此来确定目标地址的mac地址,收到响应信息后,将IP地址和mac地址的映射缓存一段时间(下次请求可以先查缓存,一般为20分钟)
Mac地址
Mac地址,用来表示互联网上每一个站点的标识符,采用16进制数表示,共6个字节
其中,前三个字节是由ieee的注册管理机构ra负责给不同厂家分配的代码,也称为编制上唯一的标识符,后三个字节由各厂家自行指派给生存的适配器接口,称为扩展标识符
发送过程
先在自己的缓存中查找有没有目的mac地址和IP地址的映射关系
如果有,就用IP与mac地址的对应关系,将mac地址按照协议写入mac帧,然后局域网发送mac帧
如果没有,就发送广播mac帧请求,ff-ff-ff-ff-ff-ff,主机b接受到后,向a发送arp响应分组,响应分组中是包括ip与mac的对应关系的,主机a会将这个对应关系进行缓存,下次使用。
Arp命令
Linux下man arp查看使用方式
Arp-a
Arp-n
Ip协议
IP协议是tcp/ip的核心协议
所有tcp和udp的数据包都是IP包来传输的
特点
不可靠
无连接
IP地址分类
a类:0.0.0.0-127.255.255.255,其中0和127不可用
b类:128.0.0.0-191.255.255.255
c类:192.0.0.0-223.255.255.255
d类:224.0.0.0-239.255.255.255
e类:240.0.0.0-255.255.255.255,其中段255不可用
Nat原理
把一个公网ip分成多个内网ip
域名服务器
根域名服务器:主要用来管理互联网的主目录,共13台
顶级域名服务器:负责管理在该域名服务器下注册的二级域名
权限域名服务器:负责一个区得到域名解析工作
本地域名服务器:查询请求首先发给本地域名服务器
查询过程
递归查询:一般客户机和服务器之间属递归查询,即当客户机向dns服务器发出请求后,若dns服务器本身不能解析,则会向另外的dns服务器发出查询请求,得到结果后转交给客户机。
迭代查询:本地域名服务器向根域名服务器查询,根域名服务器告诉它下一步到哪里去查询,然后它再去查,每次它都是以客户机的身份去各个服务器查询
Nslookup:交互模式,直接输入nslookup
http协议
http是hyper text transfer protocol(超文本传输协议)的缩写,是因特网上应用最为广泛的一种网络传输协议,所有www(万维网)文件都必须遵守这个标准
Url:统一资源定位符,uniform resource location,可以理解为url是intertnet上用来描述信息资源的字符串
Uri:统一资源标识符,,它用于在互联网上唯一地标识一个资源。URI不仅限于文本字符串,它可以包含各种信息,如协议、主机名、端口号以及资源的路径等。最常见的URI子类型是URL(Uniform Resource Locator),它是URI的一种形式,用于指定网络上的资源的位置。通过URI,用户可以执行与该资源的交互操作,如查看、下载或执行资源所在的Web页面上的动作。因此,无论是文档、图像、视频还是其他类型的文件,都可以通过其对应的URI来进行访问和操作。
<协议>://<主机>:<端口>/<路径>
第一部分:协议
第二部分:主机(可以是域名,也可以是ip,有时包括端口号)
第三部分:路径
工作原理:http协议工作与客户端-服务端架构上。浏览器作为http客户端通过url向http服务端即web服务器发送所有请求
请求:客户端发送一个http请求到服务器的请求消息包括以下格式:请求行,请求头部空行和请求数据四个部分组成
响应:http响应也由四个部分组成,分别是:状态行,消息报头,空行和响应正文
响应码:
200-请求成功,201-创建成功,202-已经接受,尚未处理
301-资源被永久转移到其他url,302-资源临时从不同的uri响应请求
400-语义错误,401-需要验证,403-拒绝执行,404-资源不存在
500-内部服务器错误
Tenlnet协议
Telnet协议是tcp/ip协议族中的一员,是Internet远程登录服务得到标准协议
登录命令:telnet[选项]host[port]
例如:telnet 192.168.80.151.23
Ssh协议
加密的,安全的连接
ftp协议(文件传输协议)
Frp:基于tcp
Tftp:基于udp
主动模式和被动模式
主动:port模式ftp客户端首先和ftp服务器的tcp 21端口建立连接,通过这个通道发送命令。客户端需要接收数据的时候在这个通道上发送port命令
被动模式:passive模式在建立控制通道的时候和stanadard模式类似,但建立连接后发送的不是port命令。而是pasv命令。
ftp协议
端口总结
主动ftp:
命令连接:客户端 1023端口->服务器 21端口
数据连接:客户端 1023端口<-服务器 20端口
被动ftp:
命令连接:客户端 1023端口->服务器 21端口
数据连接:客户端 1023端口->服务器 1023端口
传输方式:支持所有文件类型,不同的文件传输方式不同
支持的2种方式
1.ascii传输方式
2.二进制传输方式