美文网首页
关于python3 网络编程

关于python3 网络编程

作者: 进化的程序猿 | 来源:发表于2018-08-14 20:59 被阅读0次

                                      关于python3 网络编程

    (1)关于网络编程的概述

    通过物理的方式,将零散的各个计算机平台,连接在一起,实现数据的交互实现点对点、或点对面访问,在经过多年的网络技术发展,也衍生多种计算机网络标准,但是经过ISO(国际标准化组织)统一后,定义了网络数据传输模型,(OSI/RM)参考模型,规范了现在网络不同层级的传输协议,实现网络互连。

    [if !supportLists]l [endif]网络编程中的服务端&客户端

    服务端:(硬件服务端、软件服务端)

    在计算机网络中,服务端,就是将预先设置或上线的功能服务于访问服务端的每个主机,是的每个主机都能使用或体验服务断电功能。

    客户端:(硬件客户端、软件客户端)

    在有服务端的前提下,才会衍生出客户端

    [if !supportLists]l [endif]Ip (寻址协议)

    IP:(internet portocal)网络通信寻址协议

    Ip寻址协议共有四类方式:

     A:由1字节的网络地址和3字节的主机地址组成,最高位必须为“0”,地址范围从1.0.0.0到126.0.0.0可用网络地址共有126个,每个地址可容纳1亿多主机。

      B:由2字节的网络地址和2字节的主机地址组成,最高位必须“10”,地址范围从128.0.0.0到191.255.255.255。可用地址共计16382个,每个地址可容纳6万个主机。

      C:由3字节的网络地址和3字节的主机地址组成,最高位必须“110”,地址范围从192.0.0.0到223.255.255.255。可用地址共计209万个,每个地址可容纳254个主机。

      D:多用于多点广播,以第一字节“1110”开始,地址范围从224.0.0.0到239.255.255.255。

      E:类 IP 地址以“llll0”开始,为将来使用保留。240.0.0.0 到 255.255.255.254 255.255.255.255 用于广播地址.

    [if !supportLists]l [endif]Python的网络编程

    在python2X 、python3X中对于网络的支持是及其友好,python中通过套接字socket对象的连接,完成多种协议的网络程序服务端/客户端的开发和数据通信。

    Socket的出现是为了区分不同平台的体系的套接字对象,定义了地址家族的概念Adress Family,也经常简写为AF。

    第一种家族套接字,称为AF_UNIX、AF_LOCAL,这是POSIXI标准中规范。

    [if !supportLists]l [endif]Tcp 编程

    Tcp(Transmission

    Control Protocal)传输控制协议

    主要是面向对象、可靠、基于字节流的传输层通信协议

     

    三次建立连接握手:

      一:

    [if !supportLists]Ø [endif]A-

    > B:发送一个寻址请求码 seq=100;

    [if !supportLists]Ø [endif]B->A:返回一个应答ack=101

    二:

    [if !supportLists]Ø [endif]A->B:发送一个确认请求码seq=101,确认连接

    [if !supportLists]Ø [endif]B->A:返回一个应答ack=300

    三:

    [if !supportLists]Ø [endif]A->B:发送一个连接请求码ack=300;

    [if !supportLists]Ø [endif]B->A:返回应答 ack=80n A 和 B 之间开始进行数据交互

    四次挥手断开连接:

    一:

    [if !supportLists]Ø [endif]A->B:发送一个数据验证请求码 seq=100

    [if !supportLists]Ø [endif]B->A:返回一个应答 ack=101

                     二:

    [if !supportLists]Ø [endif]A->B:发送一个传输结束标记:seq=101

    [if !supportLists]Ø [endif]B->A:返回一个应答 ack=200

                     三:

    [if !supportLists]Ø [endif]A->B:发送一个确认结束标记:seq=200

    [if !supportLists]Ø [endif]B->A:返回一个应答 ack=300

                      四:

    [if !supportLists]Ø  [endif]A->B:发送连接断开标记:seq=300;B->A:返回断开连接应答:ack=400

    [if !supportLists]l  [endif]有了三次握手和四次挥手对于连接的可靠性的保障,才让TCP协议端对端的数据交互变动可靠和安全性。

    相关文章

      网友评论

          本文标题:关于python3 网络编程

          本文链接:https://www.haomeiwen.com/subject/afdbbftx.html