[面试速记] 计算机网络

本文深入探讨了计算机网络的基础,包括ISO七层模型与TCP/IP四层模型,以及TCP/IP协议簇中的关键协议。重点讲述了TCP与UDP的区别,TCP的三次握手和四次挥手过程,以及TCP的滑动窗口、流量控制和拥塞控制。此外,还介绍了HTTP的不同版本及其特性,如HTTP状态码、GET与POST的区别,以及HTTPS的安全机制。通过对网络协议的深入了解,有助于更好地理解和处理网络通信问题。
摘要由CSDN通过智能技术生成

计算机网络

什么是ISO 七层模型和 TCP/IP 四层模型?

OSI模型:七层模型,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
简化合并为四层模型应用层、传输层、网络层、网络接口层(各层之间的模型、协议统称为:TCP/IP协议簇
在这里插入图片描述
TCP/IP模型合并了OSI模型的应用层、表示层和会话层,将OSI模型的数据链路层和物理层合并为网络访问层
各层模型对应TCP/IP协议栈中的协议以及各层协议之间的关系:

  • DNS协议是建立在TCP和UDP协议的基础上
  • FTP、HTTP、TELNET协议建立在TCP协议的基础上
  • NTP、TFTP、SNMP建立在UDP协议的基础上
  • TCP、UDP协议又建立在IP协议的基础上

ping 可以说是ICMP的最著名的应用,ICMP和IP一样,是网络层的协议

常见互联网协议

layer protocols
应用层 BGP、DHCP、DNS、FTP、HTTP、HTTPS、IMAP、LDAP、MGCP、MQTT、NNTP、NTP、POP、ONC/RPC、RTP、RTSP、SIP、SMTP、SNMP、SSH、Telnet、XMPP
传输层 TCP、UDP、TLS/SSL、DCCP、SCTP、RSVP
网络层 IP (IPv4、IPv6)、ICMP、ICMPv6、ECN、IGMP、OSPF、IPsec、RIP
链接层 ARP、NDP、Tunnels L2TP、PPP、MAC (Ethernet|DSL|ISDN|FDDI)

应用层协议常用端口

在这里插入图片描述

TCP/IP

TCP/IP 与 HTTP 有什么关系?

数据是怎么通过TCP/IP协议模型从一台主机发送到另一台主机的

  • TCP/IP 协议不仅仅指的是 TCP 和 IP 两个协议,而是指一个由FTP、SMTP、TCP、UDP、IP等协议构成的协议簇, 只是因为在TCP/IP协议中TCP协议和IP协议最具代表性,所以被称为TCP/IP协议。
  • HTTP是应用层协议,主要解决如何包装数据。
  • “IP”代表网际协议,TCP 和 UDP 使用该协议从一个网络传送数据包到另一个网络。把IP想像成一种高速公路,它允许其它协议在上面行驶并找到到其它电脑的出口。TCP和UDP是高速公路上的“卡车”,它们携带的货物就是像HTTP,文件传输协议FTP这样的协议等。

TCP协议与UDP协议的区别?

  1. TCP 与 UDP都属于传输层协议。
    |TCP(Transmission Control Protocol,传输控制协议) | 面向连接的单播协议,在发送数据前,通信双方必须在彼此间建立一条连接。一个TCP连接必须有三次握手、四次挥手。 |
    |–|--|
    |UDP(User Data Protocol,用户数据报协议) | 非连接的协议,传输数据之前源端和终端不建立连接, 当它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上 |
  2. UDP首部
    在这里插入图片描述
  3. TCP首部
    在这里插入图片描述
  • 序号 :用于对字节流进行编号,例如序号为 301,表示第一个字节的编号为 301,如果携带的数据长度为 100字节,那么下一个报文段的序号应为 401。
  • 确认号 :期望收到的下一个报文段的序号。例如 B 正确收到 A 发送来的一个报文段,序号为 501,携带的数据长度为 200 字节,因此 B 期望下一个报文段的序号为 701,B 发送给 A 的确认报文段中确认号就为 701。
  • 数据偏移 :指的是数据部分距离报文段起始处的偏移量,实际上是首部的长度。
  • 确认 ACK :当 ACK=1 时确认号字段有效,否则无效。TCP 规定,在连接建立后所有传送的报文段都必须把ACK 置 1。
  • 同步 SYN :在连接建立时用来同步序号。当 SYN=1,ACK=0 时表示这是一个连接请求报文段。若对方同意建立连接,则响应报文中 SYN=1,ACK=1。
  • 终止 FIN :用来释放一个连接,当 FIN=1 时,表示此报文段的发送方的数据已发送完毕,并要求释放连接。
  • 窗口 :窗口值作为接收方让发送方设置其发送窗口的依据。之所以要有这个限制,是因为接收方的数据缓存空间是有限的。

UDP 协议中的长度和校验码可以被省略么?为什么?

  • 除了 IP 协议还有其他的协议可以传输 UDP 包[1]
  • UDP 的内容是自包含的,TCP 一般都是都是数据流的一部分[2]
  • 把长度作为校验和的一部分, 用来进行差错校验

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值