常用网络基础

IOS七层参考模型

国际标准化组织(International Standard Organization,ISO)1984年颁布了开放系统互连(Open System Interconnection,OSI)参考模型一个开放式体系结构,将网络分为七层。

应用层:网络服务与用户的接口
表示层:数据的表示、安全、压缩
会话层:会话的建立、管理、断开
传输层:通过协议端口号定义对方上层服务,流量控制、差错校验
网络层:通过IP地址进行逻辑寻址
数据链路层:通过物理地址(MAC)进行寻址,差错校验
物理层:通过物理信号传输比特流,维护物理连接

下三层是点到点,上四层是端到端
点到点:主机到主机之间的通信
端到端:进程与进程之间通信

常见tcp/ip协议

应用层:
http:超文本传输协议
FTP:文件传输协议
TFTP:简单文件传输协议
SMTP:简单邮件传输协议
SNMP:简单网络管理协议
DNS: 域名解析服务
传输层:
TCP: 传输控制协议,安全
UDP:用户数据报协议
网络层:
ICMP: 网际控制报文协议,ping
IGMP: 网络组管理协议
IP: 互联网协议
ARP: 地址解析协议,由IP解析成MAC
RARP: 反向地址解析协议,由Mac解析成IP

封装:数据到达每一层加上头或尾的过程 发送方
解封装:去掉头或尾的过程 接收方

数据报(协议数据)单元

传输层:数据段 segment
网络层:数据包 packet
数据链路层:数据帧 frame
物理层:比特流 bits

层与设备

应用层 计算机
传输层 计算机 防火墙
网络层 路由器
数据链路层 交换机
物理层 网卡网线

TCP

要说http就绕不开tcp,TCP协议对应于传输层,而HTTP协议对应于应用层,从本质上来说,二者没有可比性。但是,http是基于tcp协议的。

TCP/IP 协议分层模型
物理层将二进制的0和1和电压高低,光的闪灭和电波的强弱信号进行转换
链路层代表驱动
网络层
使用 IP 协议,IP 协议基于 IP 转发分包数据
IP 协议是个不可靠协议,不会重发
IP 协议发送失败会使用ICMP 协议通知失败
ARP 解析 IP 中的 MAC 地址,MAC 地址由网卡出厂提供
IP 还隐含链路层的功能,不管双方底层的链路层是啥,都能通信
传输层
TCP 协议面向有连接,能正确处理丢包,传输顺序错乱的问题,但是为了建立与断开连接,需要至少7次的发包收包,资源浪费
UDP 面向无连接,不管对方有没有收到,如果要得到通知,需要通过应用层
通用的 TCP 和 UDP 协议
会话层以上分层
TCP/IP 分层中,会话层,表示层,应用层集中在一起
网络管理通过 SNMP 协议
划重点了啊(面试最常问的啊)
TCP三次握手和四次挥手?
被问烂了的问题了,这里不详细讲了,

三次握手:

客户端–发送带有SYN标志的数据包–一次握手–服务端
服务端–发送带有SYN/ACK标志的数据包–二次握手–客户端
客户端–发送带有带有ACK标志的数据包–三次握手–服务端
四次挥手:

客户端-发送一个FIN,用来关闭客户端到服务器的数据传送
服务器-收到这个FIN,它发回一个ACK,确认序号为收到的序号加1 。和SYN一样,一个FIN将占用一个序号
服务器-关闭与客户端的连接,发送一个FIN给客户端
客户端-发回ACK报文确认,并将确认序号设置为收到序号加1

HTTP

Http协议是建立在TCP协议基础之上的,当浏览器需要从服务器获取网页数据的时候,会发出一次Http请求。Http会通过TCP建立起一个到服务器的连接通道,当本次请求需要的数据完毕后,Http会立即将TCP连接断开,这个过程是很短的。所以Http连接是一种短连接,是一种无状态的连接。

所谓的无状态,是指浏览器每次向服务器发起请求的时候,不是通过一个连接,而是每次都建立一个新的连接。如果是一个连接的话,服务器进程中就能保持住这个连接并且在内存中记住一些信息状态。而每次请求结束后,连接就关闭,相关的内容就释放了,所以记不住任何状态,成为无状态连接。

http常见状态码

1开头的状态码(信息类)

100,接受的请求正在处理,信息类状态码

2开头的状态码(成功类)

2xx(成功)表示成功处理了请求的状态码
200(成功)服务器已成功处理了请求。

3开头的状态码(重定向)

3xx(重定向)表示要完成请求,需要进一步操作。通常这些状态代码用来重定向。
301,永久性重定向,表示资源已被分配了新的 URL
302,临时性重定向,表示资源临时被分配了新的 URL
303,表示资源存在另一个URL,用GET方法获取资源
304(未修改)自从上次请求后,请求网页未修改过。服务器返回此响应时,不会返回网页内容

4开头的状态码(客户端错误)

4xx(请求错误)这些状态码表示请求可能出错,妨碍了服务器的处理
400(错误请求)服务器不理解请求的语法
401表示发送的请求需要有通过HTTP认证的认证信息
403(禁止)服务器拒绝请求
404(未找到)服务器找不到请求网页

5开头的状态码(服务器错误)

5xx(服务器错误)这些状态码表示服务器在尝试处理请求时发生内部错误。
这些错误可能是服务器本身的错误,而不是请求的错误
500(服务器内部错误)服务器遇到错误,无法完成请求
503,表示服务器处于停机维护或超负载,无法处理请求
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值