【面试知识点】计算机网络

计算机网络

以下内容主要整理自《TCP/IP详解 卷一》、《图解TCP/IP》、《图解HTTP》、《程序员面试笔试宝典》节选等,想要了解更多推荐阅读以上数据相关章节部分。

1 网络模型

1.1 OSI七层模型与TCP/IP五层模型

在这里插入图片描述

(图片出自《图解TCP/IP》)

OSI(Open System Interconnection,开发系统互连)七层模型与TCP/IP五层模型的区别是:

  • OSI模型更注重“通信协议必要的功能是什么”;
  • 而TCP/IP五层模型则更强调“在计算机上实现协议应该开发哪种程序”。

通常面试都会问到的是TCP/IP五层模型的划分:

(1)物理层:负责数据传输的硬件(比如以太网或电话线路)。

(2)数据链路层:控制物理层与网络层之间的通信,主要负责物理传输的准备(比如物理地址寻址,流量控制、重发等)。MAC地址和交换机都工作在这一层。

(3)网络层:网络层使用IP协议,将网络地址翻译成物理地址,并进行选路。

(4)传输层:主要为两台主机上的应用提供端到端的通信。常见的传输协议有TCP、UDP协议。

(5)应用层:主要负责处理特定的应用程序细节。

2 网络协议

2.1 常见网络协议

(1) TCP

TCP是面向连接的、可靠的、基于字节流的通信协议。TCP为提供可靠性传输,实行“顺序控制”或“重发控制”机制。此外还具备“流量控制”、“拥塞控制”等众多机制。

(2) UDP

UDP是提供无连接的通信,不能保证数据包被发送到目标地址,典型的即时传输少量数据的应用程序通常使用UDP。

(3) HTTP

HTTP是指超文本传输协议,主要负责服务器与浏览器之间的通信。HTTP把客户端浏览器的请求发送到服务器,并把响应的网页内容由服务器返回到客户端浏览器。

【版本】

HTTP常用的有两个版本,一个HTTP1.0,另一个是HTTP1.1。区别是:

  • HTTP1.0中每一个命令和应答都会触发一次TCP连接的建立和断开。
  • HTTP1.1允许在一个TCP连接上发送多个命令和应答,即持久连接。

因此HTPP1.1大量地减少了TCP连接和断开操作,从而提高了效率。

【缺点】

  • 通信使用明文(不加密),内容可能被窃听。
  • 不验证通信方的身份,可能遭遇伪装。
  • 无法证明报文的完整性,有可能被篡改。
(4) HTTPS

HTTPS从简单的来说就是安全的HTTP协议,使用了SSL协议。

HTTPS=HTTP+加密+认证+完整性保护

关于HTTPS的加密部分可以参考本文[3 加密算

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值