从0开始回顾计算机网络---系列一

简介: 基础1、网络模型(OSI七层模型,TCP/IP四层模型、五层模型、各层协议以及作用)网络模型● 七层模型: 应用层(Http、FTP)、表示层(Telnet)、会话层(DNS)、传输层、网络层、数据链路层、物理层。● 五层模型: 应用层(http、DNS、FTP、SMTP、telnet)、传输层(TCP、UDP)、网络层(IP.ICMP、ARP)、数据链路层(ppp)、物理层。● TCP/IP四层模型: 应用层,传输层,网际层,网络接口层。作用:● 应用层:解决通过应用进程之间的交互来实现特定网络应用的问题● 表示层:解决通信双方交换信息的表示问题● 会话层:解决进程之间进

基础

1、网络模型(OSI七层模型,TCP/IP四层模型、五层模型、各层协议以及作用)

网络模型

  • 七层模型: 应用层(Http、FTP)、表示层(Telnet)、会话层(DNS)、传输层、网络层、数据链路层、物理层。
  • 五层模型: 应用层(http、DNS、FTP、SMTP、telnet)、传输层(TCP、UDP)、网络层(IP.ICMP、ARP)、数据链路层(ppp)、物理层。
  • TCP/IP四层模型: 应用层,传输层,网际层,网络接口层。

作用

  • 应用层解决通过应用进程之间的交互来实现特定网络应用的问题
  • 表示层解决通信双方交换信息的表示问题
  • 会话层解决进程之间进行会话问题
  • 传输层解决进程之间基于网络的通信问题
  • 网络层解决报文或用户数据报封装成的分组和包在多个网络之间传输(路由)的问题
  • 数据链路层解决分组在一个网络(或一段链路)上传输的问题
  • 物理层解决使用何种信号来传输比特0和1的问题

2、每一层对应的网络协议有哪些?

OSI七层网络模型

TCP/IP四层模型

对应的网络协议

应用层



应用层

HTTP、DNS、FTP、NFS、WAIS、

SMIP、Telnet、SNMP

表示层

TIFF、GIF、JPEG、PICT

会话层

RPC、sQL、NFS、NetBIOS、

names、 AppleTalk

传输层

传输层

TCP、UDP

网络层

网络层

IP、ICMP、ARP、RAPP、RIP、IPX

数据链路层

网络接口层

FDDI、Frame Relay、HDLC、PPP

物理层

EIA/TIA-232、EIA/TIA-499

3、数据如何在各层之间传输?

第一步:应用层按照HTTP协议的规定构建一个HTTP请求报文,然后将其交付给传输层处理。

第二步:传输层HTTP请求报文添加一个TCP首部,使之成为TCP报文段,然后将其交付给网络层处理。

第三步:网络层TCP报文段添加一个IP首部,使之成为IP数据报,然后将其交付给数据链路层处理。

第四步:数据链路层IP数据报添加一个首部和一个尾部,使之成为帧,然后将其交付给物理层处理。

第五步:物理层看做是比特流并该比特流前面添加前导码,之后将装有前导码的比特流变换成相应的信号发送给传输媒体。

第六步:传输媒体进行传输。

网络综合

1、用户输入网址到显示对应页面的全过程?

  1. DNS 解析:当用户输入一个网址并按下回车键的时候,浏览器获得一个域名,而在实际通信过程中,我们需要的是一个 IP 地址,因此我们需要先把域名转换成相应 IP 地址。
  2. TCP 连接:浏览器通过 DNS 获取到 Web 服务器真正的 IP 地址后,便向 Web 服务器发起 TCP 连接请求,通过 TCP 三次握手建立好连接后,浏览器便可以将 HTTP 请求数据发送给服务器了。
  3. 发送 HTTP 请求:浏览器向 Web 服务器发起一个 HTTP 请求,HTTP 协议是建立在 TCP 协议之上的应用层协议,其本质是在建立起的TCP连接中,按照HTTP协议标准发送一个索要网页的请求。在这一过程中,会涉及到负载均衡等操作。
  4. 处理请求并返回:服务器获取到客户端的 HTTP 请求后,会根据 HTTP 请求中的内容来决定如何获取相应的文件,并将文件发送给浏览器。
  5. 浏览器渲染:浏览器根据响应开始显示页面,首先解析 HTML 文件构建 DOM 树,然后解析 CSS 文件构建渲染树,等到渲染树构建完成后,浏览器开始布局渲染树并将其绘制到屏幕上。
  6. 断开连接:客户端和服务器通过四次挥手终止 TCP 连接。

2、输入一个域名后经历的协议  ?

如下图所示:

3、DNS 的解析过程?

假设你要查询 www.baidu.com 的 IP 地址:

  • 首先会查找浏览器的缓存,看看是否能找到www.baidu.com对应的IP地址,找到就直接返回;否则进行下一步。
  • 将请求发往给本地DNS服务器,如果查找到也直接返回,否则继续进行下一步;
  • 本地DNS服务器向根域名服务器发送请求,根域名服务器返回负责com的顶级域名服务器的IP地址的列表。
  • 本地DNS服务器再向其中一个负责com的顶级域名服务器发送一个请求,返回负责baidu.com的权限域名服务器的IP地址列表。
  • 本地DNS服务器再向其中一个权限域名服务器发送一个请求,返回www.baidu.com所对应的IP地址。

递归查询

  • 如果主机所询问的本地域名服务器不知道被查询域名的 IP 地址,那么本地域名服务器就以 DNS 客户端的身份,向其他根域名服务器继续发出查询请求报文,即替主机继续查询,而不是让主机自己进行下一步查询。

迭代查询

  • 当根域名服务器收到本地域名服务器发出的迭代查询请求报文时,要么给出所要查询的IP 地址,要么告诉本地服务器下一步应该找哪个域名服务器进行查询,然后让本地服务器进行后续的查询。

由于递归查询对于被查询的域名服务器负担太大,通常采用以下模式:从请求主机到本地域名服务器的查询是递归查询,而其余的查询是迭代查询。

4、WebSocket 与 Socket 的区别?

Socket 等于 IP 地址 + 端口 + 协议

  • 具体来说,Socket 是一套标准,它完成了对 TCP/IP 的高度封装,屏蔽网络细节,以方便开发者更好地进行网络编程。

区别

  • WebSocket 是一个持久化的协议,它是伴随 H5 而出的协议,用来解决 http 不支持持久化连接的问题。
  • Socket 是一个网络编程的标准接口,而 WebSocket 则是应用层通信协议


5、常见协议及对应的端口?

协议

名称

默认端口

底层协议

HTTP

超文本传输协议

80

TCP

HTTPS

超文本传输安全协议

443

TCP

Telnet

远程登录服务的标准协议

23

TCP

FTP

文件传输协议

20传输和21连接

TCP

TFTP

简单文件传输协议

69

UDP

SMTP

简单邮件传输协议(发送用)

25

TCP

POP

邮局协议(接收用)

110

TCP

DNS

域名解析服务

53

服务器间进行域传输的时候用TCP
客户端查询DNS服务器时用 UDP


相关文章
|
SQL JavaScript 关系型数据库
node博客小项目:接口开发、连接mysql数据库
【10月更文挑战第14天】node博客小项目:接口开发、连接mysql数据库
|
C语言 wax
【c语言基础题】— —第四版,可当作日常练习和期末复习,有奇效哟!
【c语言基础题】— —第四版,可当作日常练习和期末复习,有奇效哟!
|
存储 C++ 容器
【STL】:list用法详解
【STL】:list用法详解
169 0
|
设计模式 算法 Java
JAVA设计模式:建造者模式原理与代码理解
JAVA设计模式:建造者模式原理与代码理解
202 0
JAVA设计模式:建造者模式原理与代码理解
|
编解码 算法 开发者
RTSP摄像机为什么还保留MJPEG编码格式
细心的开发者会发现,海康大华之类摄像机厂商,除了常规的H.264、H.265(HEVC)编码外,主码流或子码流依然会有MJPEG编码选项。 相对来说,MJPEG编码有以下特点: MJPEG(MotionJPEG)是以JPEG技术为基础扩展研发出来的动态图像压缩技术,不过它通常只单独的对某一帧进行压缩,基本不会考虑视频流中不同帧之间的变化,优点如下: 1、通过此压缩技术可获取清晰度很高的视频图像,可灵活设置每路的视频清晰度和压缩帧数。
2217 0
|
JavaScript
npm run dev 报错!SyntaxError: Use of const in strict mode.
D:initUser20190315renren-fast-vue-masternode_moduleswebpack-dev-serveebpack-dev-server.js:8const fs = require('fs');^^^^^SyntaxError: Use of const in strict mode.
4014 0
|
2天前
|
云安全 人工智能 安全
AI被攻击怎么办?
阿里云提供 AI 全栈安全能力,其中对网络攻击的主动识别、智能阻断与快速响应构成其核心防线,依托原生安全防护为客户筑牢免疫屏障。
|
12天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~

热门文章

最新文章