zoukankan      html  css  js  c++  java
  • tcp/ip基本知识

    1.1 tcp常识

      1、网络七层

          

      2、TCP三层握手

    ####1、第一次握手
    # 建立连接时,客户端发送SYN包到服务器,其中包含客户端的初始序号seq=x,并进入SYN_SENT状态,等待服务器确认。
    
    ####2、第二次握手
    # 服务器收到请求后,必须确认客户的数据包。同时自己也发送一个SYN包,即SYN+ACK包,此时服务器进入SYN_RECV状态。
    
    ####3、第三次握手
    # 客户端收到服务器的SYN+ACK包,向服务器发送一个序列号(seq=x+1),确认号为ack(客户端)=y+1,此包发送完毕,
    # 客户端和服务器进入ESTAB_LISHED(TCP连接成功)状态,完成三次握手。
    三次握手
    #### 1、第一次挥手
    # 首先,客户端发送一个FIN,用来关闭客户端到服务器的数据传送,然后等待服务器的确认。其中终止标志位FIN=1,序列号seq=u。
    
    #### 2、第二次挥手
    # 服务器收到这个FIN,它发送一个ACK,确认ack为收到的序号加一。
    
    #### 3、第三次挥手
    # 关闭服务器到客户端的连接,发送一个FIN给客户端。
    
    #### 4、第四次挥手
    # 客户端收到FIN后,并发回一个ACK报文确认,并将确认序号seq设置为收到序号加一。
    # 首先进行关闭的一方将执行主动关闭,而另一方执行被动关闭。
    四次挥手

        

      3、TCP与UDP比较

          1. TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接

          2. TCP提供可靠的服务,也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;
                UDP尽最大努力交付,即不保证可靠交付

          3. Tcp通过校验和,重传控制,序号标识,滑动窗口、确认应答实现可靠传输。

          4. UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性有较高的通信或广播通信。

          5. 每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信

          6. TCP对系统资源要求较多,UDP对系统资源要求较少。

          注:UDP一般用于即时通信(QQ聊天 对数据准确性和丢包要求比较低,但速度必须快),在线视频等

      4、tcp/udp相关协议

          1.  TCP:    STMP, TELNET, HTTP, FTP

          2.  UDP:    DNS,TFTP,RIP,DHCP,SNMP

  • 相关阅读:
    UVA 1025 A Spy in the Metro DP水题
    ZOJ 3814 Sawtooth Puzzle BFS
    ZOJ 3816 Generalized Palindromic Number
    UVA 10859 Placing Lampposts 树形DP
    UVA 11825 Hackers' Crackdown 状压DP
    POJ 2887 Big String 线段树 离线处理
    POJ 1635 Subway tree systems Hash法判断有根树是否同构
    BZOJ 3110 k大数查询 & 树套树
    sdoi 2009 & 状态压缩
    来自于2016.2.24的flag
  • 原文地址:https://www.cnblogs.com/jiaxinzhu/p/12521519.html
Copyright © 2011-2022 走看看