计算机网络四层模型及TCP/IP协议族

1、计算机网络基本概念

1)HTML
HyperText Markup Language,超文本标记语言。
2)WWW
World Wide Web,万维网
3)HTTP
HyperText Transfer Protocol,超文本传输协议。一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
4)HTTPS
Hyper Text Transfer Protocol over SecureSocket Layer。是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性 。HTTPS 在HTTP 的基础下加入SSL 层,HTTPS 的安全基础是 SSL。
5)URL
Uniform Resource Locator,统一资源定位符。在WWW上,每一信息资源都有统一的且在网上唯一的地址,即URL,由4部分组成:协议、主机、端口、路径。
6)protocol
网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合。
7)UDP
User Data Protocol,用户数据报协议
8)TCP
Transmission Control Protocol,传输控制协议。
9)ARP 协议
Address Resolution Protocol,地址解析协议。
10)三次握手策略
three-way handshaking。
11)FTP
File Transfer Protocol,文件传输协议。
12)DNS
Domain Name System,域名系统。
13)SMTP
Simple Mail Transfer Protocol,简单邮件传输协议。
13)NFS
Network File System,网络文件系统。

2、网络四层模型

计算机网络到底为什么要分层?不难想象,商量出一个共同规范是一个困难的事情,各个厂家各个不同的操作系统可能都用着不同的编码,如果因为一个网络协议,需要厂家把自己的操作系统编码这些都改一遍,那这个协议可能100年都商量不出来。
因此,分层有以下好处:
1).每一层的责任跟分工都能够明确,不同层之间用接口通信;
2).每一层扩展都很方便,想怎么改就怎么改,只要最后转化成接口约定的形式通信。

相信大多数人在大学学习的时候,学的是理论上的IOS七层模型,即应用层、表示层、会话层、传输层、网络层、数据链路层和物理层。实际应用上,一般用的是TCP/IP五层:应用层、传输层、网络层、数据链路层和物理层。每层的关系如下:
在这里插入图片描述

模拟一个HTTP请求到服务器的流程:
2.1、应用层

作用:应用层负责处理应用程序的逻辑。

作为发送端的客户端在应用层(HTTP 协议)输入一个URL(域名),发出一个想看某个 Web 页面的 HTTP 请求,发送端通过请求DNS服务,将域名解析成目标接收端的IP地址(递归查询,请求次序:本地域名服务器—权限域名服务器—顶级域名服务器—根域名服务器),并向传输层发送HTTP请求报文。

2.2、传输层

作用:传输层为两台主机上的应用程序的进程提供端到端的通信。传输层只关心通信的起始端和目的端,而不在乎数据包的中转过程。

TCP 位于传输层,提供可靠的字节流服务。即为了传输方便,在传输层(TCP 协议)把从应用层处传下来的HTTP 请求报文进行分割,并在各个报文上打上标记序号及端口号后转发给网络层。为了准确无误地将数据送达目标处,TCP 协议采用了三次握手策略,以向对方确认是否成功送达,并建立tcp连接。

2.2.1三次握手

三次握手是为了准确无误地将数据送达目标处,握手过程中使用了 TCP 的标志(flag) —— SYN 和 ACK。

发送端首先发送一个带 SYN 标志的数据包给对方。接收端收到后,回传一个带有 SYN/ACK 标志的数据包以示传达确认信息。最后,发送端再回传一个带 ACK 标志的数据包,代表“握手”结束。若在握手过程中某个阶段莫名中断,TCP 协议会再次以相同的顺序发送相同的数据包。

2.3、网络层

在网络层(IP 协议),IP 协议的作用是:(1)把运输层产生的报文或用户数据封装成分组或包(2)选择合适的路由,把数据包转发出去。IP 地址指明了节点被分配到的地址,MAC 地址是指网卡所属的固定地址。

2.3.1路由选择

在网络上,通信的两台主机一般不是直接相连的,而是通过多个中间节点(路由器)连接的。而在进行中转时,路由器会为经过路由器的每个数据帧寻找一条最佳传输路径,并将该数据有效地传送到目的站点。

2.3.2ARP协议

数据链路层两个常用的协议是ARP协议和RARP协议(逆地址解析协议)。它们实现了IP地址和机器物理地址(通常是MAC地址)之间的相互转换。

网络层使用IP地址寻址一台机器,而数据链路层使用物理地址寻址一台机器,因此网络层必须先将目标机器的IP地址转化成其物理地址,才能使用数据链路层提供的服务,这就是ARP协议的用途。

2.4、数据链路层

作用:数据链路层实现了网卡接口的网络驱动程序,以处理数据在物理媒介(比如以太网、令牌环等)上的传输。硬件上的范畴均在链路层的作用范围之内。

数据报在链路层以帧的方式进行传输,接收端的服务器在链路层接收到数据,按序往上层发送,一直到应用层。当传输到应用层,才能算真正接收到由客户端发送过来的 HTTP 请求。此时,请求的资源也会以数据包的形式通过TCP/IP通信协议回传,并在客户端以HTML的格式显示。

2.5、物理层

物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。在物理层上所传输的数据单位是比特。需要注意的是,传递信息所利用的一些物理媒体,如光缆,并不在物理层协议之内而是在物理层协议的下面。

通信的目的是传送消息,而数据是运送消息的实体,信号是数据的电气或电磁的表现。

常用编码方式:(1)不归零制:正电平代表1,负电平代表0(2)曼彻斯特编码:位周期中心的向上跳代表0,位周期中心的向下跳变代表1。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值