Python 30 网络编程介绍
1、目标:编写一个C/S架构的软件
C/S:Client --------------- 基于网络 ------------------- Server
B/S:Browser ------------ 基于网络 ------------------- Server
2、服务端需要遵循的原则:
(1)服务端与客户端都需要有唯一的地址,但是服务端的地址必须固定 / 绑定
(2)对外一直提供服务,稳定运行
(3)服务端应该支持并发
3、网路
网络=底层的物理连接介质+互联网协议 ( 是计算机界的英语 )
网络的建立目的是为了数据交互(通信)
如何实现通信:
1、建立好底层的物理连接介质
2、有一套统一的通信标准,称之为互联网协议
4、互联网协议:
OSI七层协议,但我们称之为五层协议:
物理层:发送电信号
数据链路层:ethernet
网络层:ip协议
传输层:tcp \ udp
应用层(应用层 \ 表示层 \ 会话层 ):
ip+mac可以标识全世界范围内独一无二的一台计算机的位置
port 可以标识一台计算机之上唯一的一个基于网络通信的应用软件
ip+mac+port 可以标识全世界范围内独一无二的一个应用软件(基于网络通信)
Python 30 网络编程介绍的更多相关文章
- Python 网络编程介绍
网络编程介绍 1. 目标: 编写一个C/S架构的软件 C/S: Client ----------- 基于网络 --------- Server B/S: Browser -------- 基于网络 ...
- python基础网络编程--转
python之网络编程 本地的进程间通信(IPC)有很多种方式,但可以总结为下面4类: 消息传递(管道.FIFO.消息队列) 同步(互斥量.条件变量.读写锁.文件和写记录锁.信号量) 共享内存(匿名的 ...
- python之网络编程
本地的进程间通信(IPC)有很多种方式,但可以总结为下面4类: 消息传递(管道.FIFO.消息队列) 同步(互斥量.条件变量.读写锁.文件和写记录锁.信号量) 共享内存(匿名的和具名的) 远程过程调用 ...
- python 基础网络编程2
python 基础网络编程2 前一篇讲了socketserver.py中BaseServer类, 下面介绍下TCPServer和UDPServer class TCPServer(BaseServer ...
- 【转载】Stackless Python并发式编程介绍[已校对版]
Stackless Python并发式编程介绍[已校对版] 作者: Grant Olson 电子邮件: olsongt@verizon.net 日期: 2006-07-07 译者: ...
- DAY 30 网络编程基础
一.软件开发架构 1.c/s架构 c:客户端 s:服务端 2.b/s架构 b:浏览器 c:服务器 手机端:好像C/S架构比较火,其实不然,微信小程序.支付宝第三方接口 B/S架构的优点是统一接口 PC ...
- Python的网络编程--思维导图
Python的网络编程--思维导图
- Python高级网络编程系列之第一篇
在上一篇中我们简单的说了一下Python中网络编程的基础知识(相关API就不解释了),其中还有什么细节的知识点没有进行说明,如什么是TCP/IP协议有几种状态,什么是TCP三次握手,什么是TCP四次握 ...
- python 基础网络编程1
python 基础网络编程1 Source code: Lib/socketserver.py lib的主目录下有一个sockserver.py文件, 里面是python基本的网络编程模型 共有一个b ...
随机推荐
- python SQLALchemy连接数据库。
一.ORM与SQLALchemy简介 ORM 全程object Relational Mapping,对象关系映射.简单的说,ORM将数据库中的表与面向对象中的类建立了一种对应关系.这样在操作数据库时 ...
- js 简单小知识
1. javascript的typeof返回哪些数据类型: string, boolean, number, undefined, function, object 2. split() join() ...
- react 子组件调用父组件方法
import React from 'react'import '../page1/header.css'import { Table } from 'antd'import Child from ' ...
- 7-11 社交网络图中结点的“重要性”计算 (30 分)(Dijkstra算法)
题意: 思路:对每个输入的点跑一遍dijkstra算法,然后对这个点到所有点的距离求和按公式输出就可以了. (这次尝试了用数组模拟链表来做最短路问题,刷新了自己对最短路的理解) 这里构造链表的过程我 ...
- ubuntu系统中java开发环境的搭建
Java环境可选择 Oracle 的 JDK,或是 OpenJDK,按http://wiki.apache.org/hadoop/HadoopJavaVersions中说的,新版本在 OpenJDK ...
- 66.零停机下reindex
主要知识点: 理解reindex的使用场景和必要性 学会reindex 一.理解reindex的使用场景和必要性 假设:在某一个index中依靠dynamic mapping插入数据, ...
- PHP中的几个随机数生成函数
PHP中的几个随机数生成函数 rand() 基于 libc 的随机种子发生器 mt_rand() 基于 Mersenne Twister 算法返回随机整数.它可以产生随机数值的平均速度比 libc 提 ...
- Maven学习总结(十一)——Maven项目对象模型pom.xml文件详解
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...
- ESXi License过期解决办法
http://blog.sina.com.cn/s/blog_538439270101pqls.html
- 233 Matrix 矩阵快速幂
In our daily life we often use 233 to express our feelings. Actually, we may say 2333, 23333, or 233 ...