【卷二】网络编程

服务器是什么东东,有什么用?只知道上网要Web服务器,当然,还有FQ也要!

简单地说,服务器就是为多个客户端(可以是你的电脑或浏览器)提供服务的,它存

在的唯一目的就是等待客户端的请求,并响应它们,然后等待更多的请求......

参考: 《Python核心编程(3rd)》 P49~P55

在玩转服务器之前,先来说说作为通信端点的套接字(Socket)——在服务器响应

客户端请求之前,必须进行一些初步的设置流程来为之后的工作做准备,首先会创建一

个通信接点,它能够使服务器监听请求。

如果把服务器比作公司主线呼叫的总机接线员。 一旦电话号码和设备安装成功且

接线员到达后,服务就可以开始了!巴啦巴啦,其实,我们只要知道在通信开始之前,网

络应用程序要创建套接字就对了,可将它们比作电话插孔,没有它们,通信就无法进行!

1. 创建套接字的方法, 要用到socket模块的socket.socket()函数!

1 import socket
2
3 socket.socket(socket_family, socket_type, protocol = 0)

其中,socket_family是套接字的家族,UNIX套接字是我们所讲的套接字的第一个家族,它拥有

一个"家族名称" AF_UNIX,它表示地址家族—UNIX, AF是地址家族(address family)的缩写!

第二个家族是面向网络的, 它也有自己的家族名字 "AF_INET" 或者说地址家族—因特网!

另一个地址家族是AF_INET6用于第6版因特网协议(IPv6)寻址,在所有的地址家族中,AF_INET

是使用最广泛的!

socket_type:套接字类型

,像面向网络的AF_INET类的SOCK_STREAM,翻译为流套接字,

1 # 导入socket模块的所有特性
2 from socket import *
3
4 socket(AF_INET, SOCK.STREAM)
时间: 2025-01-01 17:32:04

【卷二】网络编程的相关文章

Unix下网络编程概述

这部分我要学习的是Unix下的网络编程,参照的书籍是W. Richard. Stevens的<Unix网络编程>卷一和卷二,由于本身现在从事的工作是java后台开发,对客户端-服务器的这种通信并不陌生. 学习Unix下网络编程开发不是以后要从事这方面工作,是想学一下计算机网络知识,包括其中各种概念的厘清,和熟悉C编程.网络编程. 网络编程说白了很简单,就是两个对象(机器.应用程序)之间相互通信.通信是一个信息交换的过程,像我们人与人之间交流说话就是一种通信过程,因为几乎每天都会与人交流,导致我

TCP/IP的经典网络编程

                                                                         TCP/IP网络编程之四书五经                                                                                                                             孟岩 TCP/IP协议是眼下广域网和局域网通用的网络协议.因此.基于TCP

UNIX网络编程-第一部分(简介)-笔录

绪论: 10000小时定律已成,现今将之前所学知识温顾,所学所感所想记录第一话: 1.在学习软件编程的时候,我们第一步是先学会一门语言,然后实现一个小模块(封装成类,函数等),来完成某个具体功能或解决某个具体问题.然后在参与真正项目的时候,往往涉及到大量的封装 ,模块与模块之间的如何设计,如何使得可扩展性更好等又涉及到设计模式的问题.但模块与模块之间并不一定只在一个进程中,更不一定在一台机器之上,那么当我们需要进程与进程之间进行交流,不同网络节点之间需要交流之时,应该如何处理呢.进程与进程的通信

C#网络编程技术FastSocket实战项目演练

一.FastSocket课程介绍 .NET框架虽然微软提供了socket通信的类库,但是还有很多事情要自己处理,比如TCP协议需要处理分包.组包.粘包.维护连接列表等,UDP协议需要处理丢包.乱序,而且对于多连接并发,还要自己处理多线程等等.本期分享课程阿笨给大家带来的是来源于github开源Socket通信中间件:FastSocket,目的就是把大家从繁琐的网络编程技术中彻底地解放和释放出来. 阿笨只想安安静静的学习下网络编程技术Socket后,将学习的成果直接灵活的运用到自己的实际项目中去.

网络编程 -- RPC实现原理 -- RPC -- 迭代版本V1 -- 本地方法调用

网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2--RPC -- 本地方法调用:不通过网络 入门 1. RPCObjectProxy rpcObjectProxy = new RPCObjectProxy(new LocalRPCClient()); : 绑定目标对象 2. IUserService userService = (IUserService) rpcObjectProxy.create(IUserService.class); :返回代理类 3. List<User> u

C#网络程序设计(1)网络编程常识与C#常用特性

    网络程序设计能够帮我们了解联网应用的底层通信原理!     (1)网络编程常识: 1)什么是网络编程 只有主要实现进程(线程)相互通信和基本的网络应用原理性(协议)功能的程序,才能算是真正的网络编程. 2)网络编程的层次 现实中的互联网是按照"TCP/IP分层协议栈"的体系结构构建的,因此程序员必须搞清楚自己要做的是哪个层次上的编程工作. TCP/IP协议体系的实现情况: 其中,网络接口层已经被大多数计算机生产厂家集成在了主板上,也就是经常所说的网卡(NIC).windows操

9. 网络编程:

网络编程: 端口: 物理端口: 逻辑端口:用于标识进程的逻辑地址,不同进程的标识:有效端口:0~65535,其中0~1024系统使用或保留端口. java 中ip对象:InetAddress. import java.net.*; class  IPDemo{ public static void main(String[] args) throws UnknownHostException{ //通过名称(ip字符串or主机名)来获取一个ip对象. InetAddress ip = InetA

物联网网络编程、Web编程综述

本文是基于嵌入式物联网研发工程师的视觉对网络编程和web编程进行阐述.对于专注J2EE后端服务开发的童鞋们来说,这篇文章可能稍显简单.但是网络编程和web编程对于绝大部分嵌入式物联网工程师来说是一块真空领域. 的确,物联网研发应该以团队协作分工的方式进行,所以有嵌入式设备端.网关.web前端.APP.后端开发等专属岗位.作为系统架构师,自然需要掌握各种岗位的关键技术.作为嵌入式工程师,掌握网络编程.web编程,能够极大地拓展自己的视野和架构思维,能够主动地对系统的各种协议和应用场景提出优化的见解

linux网络编程-(socket套接字编程UDP传输)

今天我们来介绍一下在linux网络环境下使用socket套接字实现两个进程下文件的上传,下载,和退出操作! 在socket套接字编程中,我们当然可以基于TCP的传输协议来进行传输,但是在文件的传输中,如果我们使用TCP传输,会造成传输速度较慢的情况,所以我们在进行文件传输的过程中,最好要使用UDP传输. 在其中,我们需要写两个程序,一个客户端,一个服务端,在一个终端中,先运行服务端,在运行客户端,在服务端和客户端都输入IP地址和端口号,注意服务端和客户端的端口号要相同,然后选择功能,在linux

UNIX网络编程卷1 回射客户程序 TCP客户程序设计范式

本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie 下面我会介绍同一个使用 TCP 协议的客户端程序的几个不同版本,分别是停等版本.select 加阻塞式 I/O 版本. 非阻塞式 I/O 版本.fork 版本.线程化版本.它们都由同一个 main 函数调用来实现同一个功能,即回射程序客户端. 它从标准输入读入一行文本,写到服务器上,读取服务器对该行的回射,并把回射行写到标准输出上. 其中,非阻塞式 I/O 版本是所有版本中执行速度最快的,