zoukankan      html  css  js  c++  java
  • 回顾:计算机网络之传输协议

    今天面试真是超级难受。之前面试的公司问的都是项目,我准备的东西也就偏向项目了一点。然而,今天面试的面试官特别倾向于基础。结果,快排没写出来,一个简单的算法题,解题的思路跟面试官提示的不大一样。准备接下来花一段时间好好复习回顾下以前学的计算机网络、数据结构、数据库、操作系统的内容。


    TCP是面向连接的可靠数据传输服务,还有拥塞控制机制。简单地说,当双方之间网络阻塞时,TCP可以抑制发送进程。

    UDP不面向连接,也没有拥塞控制,所以速度比TCP快,当然可靠性无法保证。

    在选择了协议以后,应用还需要考虑目的主机的地址(用IP地址说明)和主机上的什么进程,后一个问题是用端口解决的。即不同类型的web程序,其端口不同。

    应用层协议规定应用程序之间如何相互传递报文。最著名的就是HTTP协议(超文本传输协议)

    HTTP用TCP作为其支撑运输层协议,由于其服务器并不存储客户端信息,HTTP也是一个无状态协议。此外HTTP默认使用持久连接。我们知道如果一个请求或相应建立在TCP上,就有这样的问题:是每个请求都用一个新的TCP还是用一个TCP管理所有请求,这两种手段分别称作非持久连接和持久连接。因为非持久连接对于服务器端来说压力巨大,一般默认为持久连接,当一个链接在一段时间内没有被使用,服务器就会终止这个TCP连接。 


    三次握手和四次握手:

    建立TCP需要三次握手才能建立,而断开连接则需要四次握手。

    三次握手分别为 SYN、SYN+ACK、ACK

    客户端发送连接请求报文(SYN,第一次),服务端接受连接后回复ACK报文,并为这次连接分配资源(第二次)。客户端接收到ACK报文后也向服务端发生ACK报文(第三次),并分配资源,这样TCP连接就建立了。

    断开连接四次握手分别为:FIN、ACK、FIN、ACK

     
  • 相关阅读:
    洛谷P2798 爆弹虐场
    洛谷P1164 小A点菜(01背包求方案数)
    洛谷P1312 Mayan游戏
    洛谷P1514 引水入城
    2017-10-12 NOIP模拟赛
    洛谷P1038 神经网络
    洛谷P1607 [USACO09FEB]庙会班车Fair Shuttle
    洛谷P1378 油滴扩展
    Ionic+Angular实现中英国际化(附代码下载)
    Ionic+Angular+Express实现前后端交互使用HttpClient发送get请求数据并加载显示(附代码下载)
  • 原文地址:https://www.cnblogs.com/rever/p/6835436.html
Copyright © 2011-2022 走看看