网络udp

socket的作用

进程指的是:运行的程序以及运行时用到的资源这个整体称之为进程

socket(简称 套接字) 是最通用的进程间通信的一种方式

创建socket

import socket
socket.socket(AddressFamily, Type)

函数 socket.socket 创建一个 socket,该函数带有两个参数:

Address Family:可以选择 AF_INET(用于 Internet 进程间通信 表示IPv4协议) 或者 AF_INET6(表示IPv6协议 未来很快可能用上) 等

Type:套接字类型,可以是 SOCK_DGRAM(数据报套接字,主要用于 UDP 协议)或者 SOCK_STREAM(流式套接字,主要用于 TCP 协议)等

UDP和TCP是两种比较常见的套接字类型 UDP使用比较简单。

 

创建一个udp socket(tcp套接字)

import socket

# 创建udp的套接字
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

# ...这里是使用套接字的功能(省略)...

# 不用的时候,关闭套接字
s.close()

说明
  套接字使用流程 与 文件的使用流程很类似

  • 创建套接字
  • 使用套接字收/发数据
  • 关闭套接字

udp网络程序-发送、接收数据

创建一个基于udp的网络程序流程很简单,具体步骤如下:

  • 创建客户端套接字
  • 发送/接收数据
  • 关闭套接字

代码如下:

#coding=utf-8

from socket import *

# 1. 创建udp套接字
udp_socket = socket(AF_INET, SOCK_DGRAM)

# 2. 准备接收方的地址
# '192.168.1.103'表示目的ip地址
# 8080表示目的端口
dest_addr = ('192.168.1.103', 8080)  # 注意 是元组,ip是字符串,端口是数字

# 3. 从键盘获取数据
send_data = input("请输入要发送的数据:")

# 4. 发送数据到指定的电脑上的指定程序中
udp_socket.sendto(send_data.encode('utf-8'), dest_addr)

# 5. 关闭套接字
udp_socket.close()
View Code

相关文章:

  • 2021-11-30
  • 2021-11-30
  • 2021-11-30
  • 2022-01-15
  • 2021-08-14
  • 2021-06-25
  • 2021-08-08
  • 2021-06-20
猜你喜欢
  • 2021-06-18
  • 2021-12-05
  • 2022-12-23
  • 2021-04-30
  • 2021-08-13
  • 2021-11-30
  • 2021-11-30
相关资源
相似解决方案