您的位置:首页 > 理论基础 > 计算机网络

网络连接时套接字对的变化状态

2016-06-06 15:40 302 查看
                      TCP网络连接的详细过程

    套接字对唯一标识一个网络上的每个TCP连接。

    一个TCP连接的套接字对是定义该连接的两个端点的四元组:本地IP地址本地端口号(唯一标识一个进程,网络通信其实两台机器数两个进程之间的通信)和外地IP地址外地端口号。

    连接的整个过程。

    1.在主机上启动服务器

      服务器是多宿主机

      12.106.32.254

      192.168.42.1

      此时服务器有一个监听套接字

      {*:21,*:*}

      服务器在他众所周知的端口21上执行被动打开,从而开始等待客户的请求。

      如果运行服务器的主机是多宿的,服务器可以指定它只接受到达某个特定本地接口的外来连接,要么选一个接口要么接任意接口

    2.IP为206.168.112.219的主机启动第一个客户

      206.168.112.219  客户ip


      客户

      {206.168.112.219:1500,

      12.106.32.254:21}

      12.106.32.254    服务器多宿,他的IP


      192.168.42.1

      服务器

      {*:21,*:*}

      客户发送到服务器21端口号的连接

      3.服务器接收并接受这个客户的连接,它fork一个自身的副本,让子进程处理该客户的连接。

      206.168.112.219

      客户

      {206.168.112.219:1500,

       12.106.254.21}

     



      12.106.32.254

      192.168.42.1

      服务器进程的套接字对

      {*:21, *:*}

      服务器子进程的套结字对

      {12.168.32.254:21,



       206.168.112.219:1500}

      在多宿主机上,连接一旦建立,已连接套结字的本地IP地址随即写入。



      4.如果有同一客户机上两个客户请求同时和一个服务器连接则连接成功时套结字的状态如下

       客户

       206.168.112.219 



       客户1{206.168.112.219:1500,

                206.168.112.219:1501,

                12.206.32.254:21}

       客户2{206.168.112.219:1501,

                12.206.32.254.21}

       服务器进程

                {*:21,*:*}

       服务器子进程1

                {12.206.32.254:21,

                 206.168.112.219:1500}

       服务器子进程1

                {12.206.32.254.21,

                 206.168.112.219:1501}


     

      

    
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: