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

                      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}

     

      

    

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值