网络编程之socket
1、是什么?
socket又称套接字,是能够实现进程间通信的一个“东西”。
2、为什么?
socket是对tcp/ip协议的一个封装,相当于软件设计模式中的外观者模式:socket作为按钮,按钮内部连接着tcp/ip的若干个对应的协议,也其实可以简单理解为socket内部封装着与TCP/IP参考模型中各层进行交互的接口。所以,通过使用socket能够方便地来与各层次进行交互,以实现网络中的进程的通信。
3、怎么做?
前言:python实现socket
(1)创建socket对象:
socket.socket(AddressFamily, Type)
其中,函数 socket.socket 创建一个 socket,返回该 socket 的描述符,该函数带有两个参数:
- Address Family:可以选择 AF_INET(用于 Internet 进程间的通信) 或者 AF_UNIX(用于同一台主机中的进程间的通信)
- Type:套接字类型,可以是 SOCK_STREAM(流式套接字,主要用于 TCP 协议)或者 SOCK_DGRAM(数据报套接字,主要用于 UDP 协议)
①创建一个tcp socket(tcp套接字)
import socket s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) print('Socket For UDP')
②创建一个udp socket(udp套接字)
import socket s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) print('Socket For TCP')
附注:以上内容如觉不妥,欢迎交流。