Internet体系结构是符合TCP/IP协议栈的
网络应用体系结构(3种)
- C/S,客户机/服务器结构=Client-Server
- P2P,点对点结构=Peer-to-peer
- 混合结构,Hybrid
*为每种体系结构找出5种以上的网络应用
*从多方面、多角度对比三种体系结构的优缺点
A、C/S结构
其工作方式为客户机向服务器请求服务,服务器将服务完后的结果再反馈给客户机, 它对服务器的要求很高。
a. 对服务器的要求: 要提供永久性可访问的地址/域名、
需要24小时,全天候提供服务、
具有可扩展性(比如当用户大量增加时)
b. 对客户机的要求: 能够与服务器通信,使用服务器提供的服务、
可以间歇性接入网络、
可以使用动态IP、
不会与其它客户机直接通信
B、P2P结构
客户机与客户机之间可以相互通信吗?不行,C/S结构中这是对客户机的基本要求之一。
但对于P2P却不一样,P2P是什么?P2P就是平等与自由。
在P2P结构中:没有永远在线的服务器,每个服务器,都可以作客户机,每个客户机,也可以当服务器。任意端节点之间可以直接通讯,节点可以间歇性接入网络,也可以改变IP地址。
优缺点:高度可伸缩性、结构复杂,难以维护
C、混合结构(典型使用:Napster)
- P2P难于管理,那我们就混入C/S的集中管理。
- C/S中服务器压力过大,我们就混入P2P中的P们来为它减轻负担。
在Napster系统种,文件传输使用P2P结构,文件搜索采用的C/S结构(集中式)。也就是说,P2P中的那个P,你想要什么,你有什么,全都告诉我服务器,那个谁有你想要的东西,我叫它立马直接传给你,这个谁想要你的这个东西,你立马把这个东西传给它。
即:每个节点有义务向中央服务器登记自己的内容,每个节点有权利向中央服务器提交查询请求,查找感兴趣的内容。
不同网络应用的服务需求(3个)
- 可靠性/数据丢失
某些网络应用能容忍一定的数据丢失:网络电话
某些网络应用要求100%可靠的数据传输:文件传输,telnet
- 带宽
某些网络应用只有在带宽达到最低要求才能有效:网络视频
某些网络应用能适应任何带宽要求——弹性应用:Email,下载
- 时延/时间要求
某些网络应用只有在延迟足够低才有效,网络电话,网络游戏
Internet传输层提供的服务模型(2个)
- TCP
1、面向连接
2、可靠的数据传输(将底层的不可靠转变为可靠,可信)
3、流量控制(不会使发送速度超过接收方的处理能力)
4、拥塞控制(当网络负载过重时限制发送方的发送速度)
5、不提供时间/延迟保障
6、不提供最小带宽保障
- UDP,提供自由
1、无连接
2、不可靠的数据传输
3、不提供流量控制
4、不提供拥塞控制
5、不提供时间/延迟保障
6、不提供最小带宽保障
特定网络应用及协议(4种)
- HTTP
- SMTP、POP、IMAP
- DNS
- P2P应用
开发网络应用,利用socket编程
- TCP
- UDP