网络编程

网络编程,我们的理解是基本的客户端-服务器的编程模型,这是基本的编程模型。所有的网络应用都依赖于前面文章提及到的进程、信号、字节顺序、内存映射以及动态内存分配。而网络编程就是基于因特网服务的客户端-服务端模型编程。
何谓网络
从硬件上看待网络,网络依赖于一种I/O设备,成为网络适配器。这是一种从网络上接收到的数据从适配器经过I/O和内存总线复制大内容,通常是通过DMA传送。同样,数据也能从内存复制到网络。
IP地址
IP地址是一组32位无符号整数。因特网主机唯一标识的物理地址,采用大端法网络字节顺序存放。
域名
IP地址是一串纯数字,当因特网主机增多,为了记忆而更加人性化的域名。DNS服务,是一种由域名映射到IP地址的机制的服务。域名与IP地址的映射关系为多对多的关系。所以说,IP地址才是主机的真实地址。域名集合是采用树形层次结构排列的集合。
因特网连接
因特网客户端和服务器通过在连接上发送和接收字节流来通信,从连接一对进程的意义上而言,连接是点对点的。从数据可以同时双向流动的角度来说,他是全双工的
套接字
套接字是连接的一个端点。每个套接字都有相应的套接字地址,为 因特网地址+一个16位的整数端口组成。客户端发送一个连接请求时,客户端地址中的端口是由内核自动分配的,称为临时端口。然而,服务器套接字地址的端口是某个固定的端口,是和这个服务相对应的。而操作系统一般都会提供系统级的套接字接口,包括套接字的连接、监听、绑定等等。
套接字地址结构
从linux内核的角度来看,一个套接字就是通信的一个端点。从Linux程序的角度来看,套接字就是一个有相应描述符的打开文件。
网络编程需要将不同协议的套接字地址结构转换为通用的套接字地址结构。
web服务器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值