网络编程-基础

网络通信–基础

计算机网络基础知识

什么是socket

它是使用 标准Unix 文件描述符 (file descriptor) 和其它程序通讯的方式,是internet套接字
网络通信-socket,计算机中两个程序通过socket建立一个通道,数据在通道中互相传输,构成了简单的网络通信。
socket有两种类型,Stream Socket(流格式)和Datagram Socket(数据报格式),数据报套接字也叫“无连接套接字”,使用UDP协议,流式套接字是可靠的双向通讯的数据流,使用TCP协议。

传输协议

TCP 传输控制协议 (The Transmission Control Protocol)
有序,安全,可靠,通过通道双向传输,数据不会丢失,重复,乱序
UDP 用户数据报协议 (User Datagram Protocol)
不需要建立和维持连接,可能造成数据丢失和错乱,对数据长度有限制,但是效率较高,为了防止数据丢失,设置在对方收到包后返回一个应当(“ACK”包),如果规定时间没有收到ACK,则重新发送,直到得到ACK。

网络层次模型

TCP/IP四层网络模型:
  • 网络接口层
  • 网间层
  • 传输层
  • 应用层
    网络接口层最底层,包含用于协作ip数据在已有网络介质上传输的协议(ARP,RARP协议)
    网间层对应于OSI七层参考模型的网络层。负责数据的包装、寻址和路由。同时还包含网间控制报文协议(Internet Control Message Protocol,ICMP)用来提供网络诊断信息。
    (本层包含IP协议、RIP协议(Routing Information Protocol,路由信息协议),ICMP协议。)
    传输层对应于OSI七层参考模型的传输层,它提供两种端到端的通信服务。其中TCP协议(Transmission Control Protocol)提供可靠的数据流运输服务,UDP协议(Use Datagram Protocol)提供不可靠的用户数据报服务。
    应用层对应于OSI七层参考模型的应用层和表达层。
    因特网的应用层协议包括Finger、Whois、FTP(文件传输协议)、Gopher、HTTP(超文本传输协议)、Telent(远程终端协议)、SMTP(简单邮件传送协议)、IRC(因特网中继会话)、NNTP(网络新闻传输协议)等。
    部分协议略解:
    ARP: 将32位的IP地址转换为48位的物理地址。
    ICMP: 因特网控制报文协议。它是IPv4协议族中的一个子协议,用于IP主机、路由器之间传递控制消息。控制消息是在网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然不传输用户数据,但是对于用户数据的传递起着重要的作用。
OSI七层网络模型:
  • 应用层 (七)
  • 表示层
  • 会话层
  • 传输层
  • 网络层
  • 数据链路层
  • 物理层(一)
    物理层:
    作用: 负责最后将信息编码成电流脉冲或其它信号用于网上传输。它由计算机和网络介质之间的实际界面组成,可定义电气信号、符号、线的状态和时钟要求、数据编码和数据传输用的连接器。所有比物理层高的层都通过事先定义好的接口而与它通话。
    协议: 如最常用的RS-232规范、10BASE-T的曼彻斯特编码以及RJ-45就属于第一层。
    数据链路层:
    **作用:**数据链路层通过物理网络链路提供可靠的数据传输。
    协议: ATM,FDDI等
    网络层:
    作用: 这层对端到端的包传输进行定义,他定义了能够标识所有结点的逻辑地址,还定义了路由实现的方式和学习的方式。为了适应最大传输单元长度小于包长度的传输介质,网络层还定义了如何将一个包分解成更小的包的分段方法。
    协议: IP,IPX等
    传输层:
    作用: 传输层向高层提供可靠的端到端的网络数据流服务。传输层的功能一般包括流控、多路传输、虚电路管理及差错校验和恢复。流控管理设备之间的数据传输,确保传输设备不发送比接收设备处理能力大的数据;多路传输使得多个应用程序的数据可以传输到一个物理链路上;虚电路由传输层建立、维护和终止;差错校验包括为检测传输错误而建立的各种不同结构;而差错恢复包括所采取的行动(如请求数据重发),以便解决发生的任何错误。
    协议: TCP,UDP,SPX
    会话层:
    作用:会话层建立、管理和终止表示层与实体之间的通信会话。通信会话包括发生在不同网络应用层之间的服务请求和服务应答,这些请求与应答通过会话层的协议实现。它还包括创建检查点,使通信发生中断的时候可以返回到以前的一个状态。
    协议: SQL,RPC等
    表示层:
    作用: 主要功能是定义数据格式以及加密
    协议: FTP,加密
    应用层:
    作用: 应用层是最接近终端用户的OSI层,这就意味着OSI应用层与用户之间是通过应用软件直接相互作用的。注意,应用层并非由计算机上运行的实际应用软件组成,而是由向应用程序提供访问网络资源的API(Application Program Interface,应用程序接口)组成,这类应用软件程序超出了OSI模型的范畴。应用层的功能一般包括标识通信伙伴、定义资源的可用性和同步通信。因为可能丢失通信伙伴,应用层必须为传输数据的应用子程序定义通信伙伴的标识和可用性。定义资源可用性时,应用层为了请求通信而必须判定是否有足够的网络资源。在同步通信中,所有应用程序之间的通信都需要应用层的协同操作。
    协议: telnet,HTTP,FTP,WWW,NFS,SMTP等。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值