Linux下网络编程(一)

来源:互联网 发布:云南师范大学网络缴费 编辑:程序博客网 时间:2024/06/05 03:44

一,计算机与网络的发展

计算机与网络发展的7个阶段

1.  批处理(20世纪50年代)

是指实现将用户个数据装入卡带或者磁带。并有计算机按照一定的顺序读取,是用户索要执行的这些程序和数据能够一并批量得到处理的方式。

2.  分时系统(20世纪60年代)

是指多个终端(包含鼠标、键盘、显示器等输入输出设备组成,最初还包括打印机)与一台计算机连接,允许多个用户同时使用一台计算机的系统。
特性:多路性、独占性、交互性和及时性。

3.计算机之间的通信(20世纪70年代)4.  计算机网络的产生(20世纪80年代)5.  互联网的普及(20世纪90年代)6.  以互联网技术为中心的时代(2000年)7.从“单纯建立连接”到“安全建立连接”(2010年)

二,早期的ARPAnet使用网络控制协议(Network Control Protocol,NCP)

不能互联不同类型的计算机和不同类型的操作系统,没有纠错功能

三,网络的体系结构

网络的层次结构和每层所使用协议的集合

四,OSI开放系统互联模型

应用层 应用程序:FTP、E-mail、Telnet
表示层 数据格式定义、数据转换/加密
会话层 建立通信进程的逻辑名字与物理名字之间的联系
传输层 差错处理/恢复,流量控制,提供可靠的数据传输
网络层 数据分组、路由选择
链路层 数据组成可发送、接收的帧
物理层 传输物理信号、接口、信号形式、速率

五,OSI参考模型

  1. ISO(国际标准化组织)制定了一个国际标准OSI(开放式通信系统互联参考模型),对通信系统进行了标准化。
  2. OSI模型将通信协议中必要的功能分成了7层,每个分层都接收有它下一层所提供的特定服务,并且负责为自己的上一层提供特定的服务。上下层之间进行交互时所遵循的约定叫做 “接口”。同一层之间的交互所遵循的约定叫做“协议”。
  3. 7层通信
    (1)应用层:指定特定应用的协议(比如发送和接受文件的软件按钮,发送者输入“早上好”并附上收件人,按下发送按钮,接受者收到信息会将其存储在硬盘或者非易失存储器(数据不会因为断电而丢失的一种存储设备)上,这些都是在应用层上的)
    (2)表示层:设备固有数据格式和网络标准数据格式的转换(接受者和发送者如果使用的邮件客户端不一样,那么就会出现问题,如何实现用户之间的通信,那么就需要在表示层来起作用,使得在不同的客户端上拥有相同的网络格式)
    (3)会话层:通信管理,负责建立或者断开通信连接(发送者一次性发送5份邮件,那么接受者如何接受,是一次性接受所有的文件然后断开连接还是没接受一次就断开,然后在此进行,发送者同理)
    (4)传输层:管理两个节点(互联的网络中断)之间的数据传输。负责可靠传输(确保数据被可靠地传送到目标地址)(确保发送者和接受者之间的通信,会话层负责决定建立连接和断开连接的时机,而传输层进行实际的建立和断开处理)
    (5)网络层:地址管理与路由选择,作用:在网络相互连接的环境中,将数据从发送端主机发送到接受端主机
    (6)数据链路层:互连设备之间传送和识别数据帧
    (7)物理层:以“0”、“1”代表的电压的高低、灯光的闪灭。界定连接器和网络的规格。

六,协议与标准化

  1. 协议

    一组控制数据通信的规则。三要素:语法(包括数据格式、编码及信号电平等)、语义(包括用于协议和差错处理的控制信息)、时序(包括速度匹配和排序)一致同意的规则。分类:事实上的标准:实际情况或者习惯合法标准:法律或者规章制度
  2. 标准化组织

    缓慢发展    ISO:国际标准化组织    ITU-T:国际电联-电信标准部    ANSI:美国国家标准化局    IEEE:电气电子工程师协会(主要是以太网、局域网方面的)    EIA:电子工业协会(物理传输标准、光钎传输)快速发展    论坛:帧中继论坛、ATM论坛    管理机构:FCC 联邦通信委员会    Internet标准:RFC


后续引导

这一篇主要对网络编程tcp/udp协议的基础知识了解,下节将介绍tcp/udp及套接字。对文章有看法和意见,我的邮箱18300698861@163.com等待您的技术探讨