孙鑫VC学习笔记:第十四讲 网络的基本概念

介绍一下网络的基本概念
------------------------------------------------------------------------
ISO/OSI七层参考模型
OSI(Open System Interconnection)参考模型将网络的不同功能划分为7层。
应用层--->处理网络应用
表示层--->数据表示
会话层--->主机间通信
传输层--->端到端的连接
网络层--->寻址和最短路径
数据链路层--->介质访问(接入)
物理层--->二进制传输
------------------------------------------------------------------------
OSI各层使用协议:
应用层:远程登录协议Telnet,文件传输协议FTP,超文本传输协议HTTP,
域名服务DNS,简单邮件传输协议SMTP,邮局协议POP3
传输层:传输控制协议TCP:面向连接的可靠的传输协议,
用户数据报协议UDP:是无连接的,不可靠的传输协议。
网络层:网际协议IP,
Internet互联网控制报文协议ICMP、Internet组管理协议IGMP。
------------------------------------------------------------------------
TCP/IP模型
应用层
传输层
网络层
网络接口

------------------------------------------------------------------------
套接字(socket)
套接字存在于通信区域中。
通信区域也叫地址族,它是一个抽象的概念,
主要用于将通过套接字通信的进程的共有特性综合在一起。
套接字通常只与同一区域的套接字交换数据
(也有可能跨区域通信,但这支在执行了某种转换进程后才能实现)。
Windows Sockets只支持一个通信区域:
网际域(AF_INET),这个域被使用网际协议簇通信的进程使用。
------------------------------------------------------------------------
网络字节顺序
不同的计算机存放多字节值的顺序不同,有的机器在起始地址存放低字节(低位先存),有的机器在起始地址存放高字节(高位先存)。
基于Intel的CPU,即我们通常使用的PC机采用的是低位先存。
为保证数据的正确性,在网络协议中需要制定网络字节顺序。
TCP/IP协议使用16位整数和32位整数的高位先存格式

网间进程通信完全是异步的,相互通信的进程间既不存在父子关系,
又不共享内存缓冲区,因此需要一种机制为希望通信的进程间建立联系,
为二者的数据交换提供同步,这就是基于客户机/服务器模式的TCP/IP。
------------------------------------------------------------------------
套接字的类型
流式套接字(SOCK_STREAM)
提供面向连接,可靠的数据传输服务,数据无差错,无重复的发送,且按发送顺序接收
数据报套接字(SOCK_DGRAM)
提供无连接服务。数据报以独立包形式发送,不提供错误保证,
数据可能丢失或重复,并且接收顺序混乱。基于UDP
原始套接字(SOCK_RAW)。
------------------------------------------------------------------------
基于TCP的socket编程服务器和客户端进行通信都使用send/recv
基于UDP的socket编程服务器端为接收端,客户端为发送端。
发送数据为sendto,接收数据为recvfrom

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值