如何连接两台计算机呢? - HTTP协议相关

人类精心设计的最大通信系统-因特网

因特网是一个世界范围内的计算机网络,通过通信链路和分组交换机连接着数以万计的端系统。

那么,端系统(Client/Server模式等)是如何接入因特网进行信息传递的呢?(分组交换/电路交换)

    1. 端系统 - 链路(物理链路:家庭/企业/广域网等) - 链路层交换机/路由器(分组交换机):存储转发报文

    2. 用IP地址标识端系统 - 根据、路由器中的索引转发表决定适当链路

    3. 网络中存在网络(国家ISP→区域ISP等等),同时分组交换存在时延/丢包

在如此复杂的网络结构下,我们该如何对其进行讨论与应用呢?

回答:根据不同服务功能对因特网划分层次,用协议规范服务

大量的网络应用需要支持它们的协议,让其在多端系统上自由运行。

根据使用途径自顶向下划分因特网:1. 应用层 2. 运输层 3. 网络层 4. 链路层 5. 物理层

-------------------------------------------------------------------------------------------------------------------

1. 应用层

        两个不同端系统上的进程,通过Socket软件接口(应用层与运输层的桥梁)接入因特网交换报文,达成会话通信。

HTTP协议:

        过程:

        通过HTTP客户端(浏览器),使用TCP作为支持协议,

        根据URL(协议+主机名+路径名)寻址,发送请求报文/接收响应报文(web文档)。

        特点:

        1:无状态:不保存任何用户信息

        2:非持续连接:每个TCP只传输一对请求响应报文,需要重新建立TCP连接

            (1) 发起端-端TCP连接(三次握手:发送TCP报文段,确认,确认)

            (2) 在第三次握手中,发送HTTP请求报文

            (3) 服务器(端口80)发送响应报文,通知断开TCP连接/客户端确认后实际断开TCP连接(4次握手)

        3:持续连接:服务器发送完响应报文保持TCP连接打开,设置超时间隔。

SMTP/FTP:电子邮件/文件传送

DNS协议:域名系统DNS将主机名转换为IP地址,即提供因特网上的主机名目录服务。由以下成分构成:

        1. 由分层DNS服务器构实现的分布式数据库

        2. 使主机能够查询分布式数据库的应用层协议(53端口)

--------------------------------------------------------------------------------------------------------------------

2. 运输层

TCP协议:需建立端-端连接+可靠运输

UDP协议: 无需建立端-端连接+不可靠(IP服务)

----------------------------------------------------------------------------------------------------------------------------------

3. 网络层

            1. 分组转发:IPv4/6:使用32bit:4x8/128bit:16x8,来表示端系统

            2. 路由选择:分散式路由算法(迭代计算区域最短路径)/全局式路由选择算法(计算全网最短路径)

----------------------------------------------------------------------------------------------------------------------------------

4. 链路层

5. 物理层

----------------------------------------------------------------------------------------------------------------------------------

文章参考:

1.理解网络模型各层协议的分工及由来

https://blog.csdn.net/fyduan/article/details/50879840

猜你喜欢

转载自www.cnblogs.com/ChrismasIn2015/p/9428161.html