• 6.python中的网络编程


    在python中支持多种地址家族

    其中,常用的最早的伯克利套接字中是AF_UNIX,

    Linux中的套接字是AF_NETLINK,

    针对 Linux 的另一种特性(Python 2.6 中新增)就是支持透明的进程间通信(TIPC)协议。 TIPC 允许计算机集群之中的机器相互通信,而无须使用基于 IP 的寻址方式。 Python TIPC 的支持以 AF_TIPC 家族的方式呈现。 

    而最常用的基于网络的编程是基于家族名字 AF_INET,或者地址家族:因特网。另一个地址家族 AF_INET6 用于第 6 版因特网协议(IPv6)寻址 。

    1.创建套接字

    要创建套接字,必须使用 socket.socket()函数,它一般的语法如下。
    socket(socket_family, socket_type, protocol=0)
    其中,socket_family 是 AF_UNIX 或 AF_INET(如前所述),socket_type 是 SOCK_STREAM
    或 SOCK_DGRAM(也如前所述)。 protocol 通常省略,默认为 0。
    所以,为了创建 TCP/IP 套接字,可以用下面的方式调用 socket.socket()。
    tcpSock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    同样,为了创建 UDP/IP 套接字,需要执行以下语句。
    udpSock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

    tips:使用from socketimport *,就可以直接写udpSock = socket(socket.AF_INET, socket.SOCK_DGRAM),不用每个函数名前都加上模块名socket了。

    套接字内置的方法

     一般来说,简单的标准流程为:(此为TCP服务器)

    而TCP客户端的标准流程为:

    创建UDP服务器:

    UDP客户端:

    以上只是基础的步骤,但是实际上并不使用,而是直接使用Python中已经封装好的类,socketserver模块,具体函数可以查询。(2中两个单词的S大写,3中则为小写)

  • 相关阅读:
    树莓派进阶之路 (029)
    C语言学习笔记 (010)
    树莓派进阶之路 (028)
    C语言学习笔记 (009)
    虚拟内存和swap分区的关系
    树莓派进阶之路 (027)
    树莓派进阶之路 (026)
    C语言学习笔记 (008)
    ubuntu下安装gedit插件
    Ubuntu终端命令行播放音乐(mp3)
  • 原文地址:https://www.cnblogs.com/lixiaofou/p/7653319.html
Copyright © 2020-2023  润新知