python -网络编程及Web应用(未写完)

网络编程

本质是让处于网络中的两个设备进行进程间的数据交换,网络是网络编程的基础。

网络体系结构通常有OSI、TCP/IP和五层模型三种,协议一般有TCP、UDP、IP协议三种。
TCP面向连接且可靠、UDP无连接速度快、IP连接不可靠。
还需要了解一些网络技术中和ip地址有关的部分

网络编程概述

当今网络编程一般采用请求\响应方式。也就是C/S。

套接字socket

即socket,它是进程之间进行通信的方式,其本意为插座。python中有它涵盖的基本方法、函数和类等。同时它还包含了一个同名类,通过该类可以实例化一个socket对象。

_init_(self,family=<AddressFamily.AF_INET:2>,
	type=<SocketKind.SOCK_STREAM:1>,proto=0,fileno=None)

AF_INET-ipv4
AF_INET6-ipv6
AF_UNIX 单一的UNIX系统之间的通信

SOCK_STREAM:流式套接字,用于TCP
SOCK_DGRAM:数据报式套接字,用于UDP
SOCK_RAW:用于ICMP\IGMP,或者用于构建ip头部

proto用于选择协议
fileno用于选择文件描述符

创建

import socket
socket_tcp=socket.socket(socket.AF_INET,socket.SOCK_STREAM)

通信流程

面向连接的

类似我们打电话,必须接通才能开始数据通信。
在这里插入图片描述

面向非连接的

类似我们收发邮件,接收方不用考虑联通。区别在于客户端不会发起所谓的连接请求而是直接用sendto函数向接收方发送数据。

socket内建方法

在这里插入图片描述

TCP并发服务器(涉及线程)

I/O多路转接服务器(select)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值