网络编程的TCP和UDP实现(Python)
socket包使用
缓冲区英文Buffer,因此缓冲区大小定义为BUF_SIZE
TCP服务端:
import socketip_port = ('127.0.0.1', 9000)
BUF_SIZE = 1024
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(ip_port)
s.listen(5)
while True:conn, addr = s.accept()print('接收到来自%s的电话' % addr[0])while True:try:msg = conn.recv(BUF_SIZE)print(msg, type(msg))if len(msg) == 0:breakconn.send(msg.upper())except Exception:breakconn.close()
s.close()
TCP客户端:
import socketip_port = ('127.0.0.1', 9000)
BUF_SIZE = 1024
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(ip_port)
while True:msg = input('>>:').strip()if len(msg) == 0: continues.send(msg.encode('utf-8'))feedbacks = s.recv(BUF_SIZE)print(feedbacks.decode('utf-8'))
s.close()
UDP服务端:
import socket
ip_port = ('127.0.0.1', 9000)
BUF_SIZE = 1024
u = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
u.bind(ip_port)
while True:msg, addr = u.recvfrom(BUF_SIZE)print(msg, addr)u.sendto(msg.upper(), addr)
u.close()
UDP客户端:
import socket
ip_port = ('127.0.0.1', 9000)
BUF_SIZE = 1024
u = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
while True:msg = input('>>:').strip()if not msg:continueu.sendto(msg.encode('utf-8'), ip_port)back_msg, addr = u.recvfrom(BUF_SIZE)print(back_msg.decode('utf-8'), addr)
u.close()
网络编程的TCP和UDP实现(Python)相关推荐
- python网络编程自学_五分钟搞定Python网络编程实现TCP和UDP连接
Python网络编程实现TCP和UDP连接, 使用socket模块, 所有代码在python3下测试通过. 实现TCP#!/usr/bin/env python3 # -*- coding: utf- ...
- Java的网络编程【TCP与UDP聊天小程序】
Java的网络编程[TCP与UDP聊天小程序] 1. TCP协议 1.1 传输控制协议(Transmission Control Protocol),是一种**面向连接(全程保持连接)**的协议,类似 ...
- 网络编程(TCP、UDP)
一.概述 地球村:也译为世界村(global village),对地球的一种比喻说法.现代科技的迅速发展,缩小了地球上的时空距离,国际交往日益频繁便利,因而整个地球就如同是茫茫宇宙中的一个小村落. J ...
- Java网络编程:TCP,UDP,sock编程
第一节 网络基础知识 常用的通信协议 MAC地址:(Media Access Control Address,媒体存取控制位址), IP:(Internet Protocol,网际协议) UDP:(U ...
- Java中的网络编程(TCP与UDP)
什么是Socket? Socket是一个抽象的概念,一个应用程序通过Socket建立一个远程连接,而Socket内部通过TCP/IP协议把数据传送至网络. 简单的来说,Socket就是套接字,由IP地 ...
- 网络编程(tcp和udp)
文章目录 网络编程 1 软件结构 2 网络通信协议 2.1 TCP/IP协议参考模型 2.2 TCP与UDP协议 3 网络编程三要素 1.协议 2.IP地址 3.端口号 4 InetAddress类 ...
- 【Linux网络编程】TCP 和 UDP 数据报格式详解
TCP 报文格式 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的.可靠的.基于字节流的传输层通信协议. TCP 报文段的报头有 10 个必需的字段和 ...
- JAVA 网络编程中TCP和UDP
网络的相关概念 网络通信 概念:两台设备之间通过网络实现数据传输 网络通信:将数据通过网络从一台设备传输到另一台设备 java.net包下提供了一系列的类或接口,供程序使用,完成网络通信 网络 概念: ...
- Python网络编程—(TCP、UDP区别)
tcp套接字和udp套接字编程区别 1.流式套接字是以字节流方式传输数据,数据报套接字以数据报形式传输 2.tcp套接字会有粘包,udp套接字有消息边界不会粘包 3.tcp套接字保证消息的完整性,ud ...
最新文章
- Java 注册SIGINT信号,处理CTRL+C
- 2017 Multi-University Training Contest - Team 2 Puzzle
- Beetlsql自定义生成entity,mapper,md代码
- C语言实现QR(正交三角)分解(附完整源码)
- Android 学习笔记四:创建工具栏按钮
- ASP.NET Core launchsettings.json文件(8)《从零开始学ASP.NET CORE MVC》:
- FLEX:target和currentTarget属性的区别
- 【今日CV 计算机视觉论文速览 第120期】Thu, 23 May 2019
- mysql数据库插入datetime_往MySQL数据库datetime类型字段中插入数据库的当前时间
- ROS笔记(16) ArbotiX
- modbus测试plc软件,MODBUS RTU设备测试调试工具官方版
- adobe reader XI 打开后闪退(或过几秒后自动退出)【解决方案】
- U盘 / 移动硬盘在 Mac 苹果电脑上无法使用问题
- 如何将微信聊天记录保存为excel
- 03 野火imxull开发板添加 正点原子lcd 支持
- html5页面设计技术,H5页面设计技巧有哪些?-鱼爪网
- 爬虫爬取招聘信息并进行数据分析
- PBS任务只排队,不运行
- Docker容器回顾之运维篇
- python import变灰_python--pycharm中import导入包呈现灰色问题之解决~很实用