计算机网络

计算机网络的主要性能指标

带宽(bandwidth):
本来是指某个信号具有的频带宽度
这里是作为数字信道所能传输的最高数据传输速率,称为数据传输率或者比特率。单位是bit/s。
带宽有时也称为吞吐量(throughput),吞吐量常用每秒发送的比特数(或字节数、帧数)来表示。

计算机网络的体系结构

五层协议的体系结构:

5 应用层
4 运输层
3 网络层
2 数据链路层
1 物理层
1、应用层(application layer)
应用层直接为用户的应用进程提供服务。这里的进程指正在运行的程序。应用层的协议有支持万维网应用的http,支持电子邮件的smtp,支持文件传送的FTP等。
2、运输层(transport layer)
运输层中的任务负责两个主机中进程之间的通信提供服务。
运输层可以使用两种不同的协议:
- 传输控制协议TCP(transmission control protocol)–面向连接,数据传输单位是报文段(segment),能过保证提供可靠的交付。
- 用户数据包协议UDP(user datagram protocol)–无连接,数据传输单位是用户数据报,不保证提供可靠的交付,智能尽最大努力交付(best-effort delivery)。
3、网络层(network layer)
网络层为分组交换网上的不同主机提供通信服务。在发送数据时,网络层把运输层产生的报文段或者数据报封装成包或分组,进行传送。在TCP/IP体系中,由于网络层使用IP,因此也叫IP数据报,或简称数据报。一般把分组和数据报当做同义词。网络层提供的是尽最大努力交付的服务。
4、数据链路层(data link layer)
简称链路层。两个主机之间的数据传输,总是一段一段的在链路上传输,也就是说,两个节点(主机和路由器之间或两个路由器之间)传送数据是直接传送的(点对点)。这就需要专门的链路层协议。在两个节点传送数据时,链路层将网络层传下来的ip数据报组装成帧(framing),在相邻的两个结点间的链路上透明的传送以帧为单位的数据。每一帧包括数据和必要的控制信息(如同步信息,地址信息,差错信息)。
透明:是一个重要的专业术语。他表示:某一个实际存在的事物看起来却好像不存在一样。在数据链路层透明的传送数据,表示无论用什么样的比特组合构成的帧都能够通过这个数据链路层,因此对传送帧来说,这个帧就“看不见”数据链路层。或者说数据链路层对这个帧是透明的。
5、物理层(physical layer)
物理层的任务就是透明的传输比特流。在物理层传送数据的单位是比特。传送信息所用的一些物理媒体,如双绞线、同轴电缆、光缆等,并不在物理层内,而是在物理层下面。因此也有人把物理媒体当做第0层。

note:在因特网使用的各种协议中,最著名和最重要的就是TCP和IP两个协议。现在人们经常提到大TCP/ IP并不一定指的是TCP和IP两个具体的协议。而往往是表示因特网所使用的体系结构或指的是整个TCP/IP族(protocol suite)

TCP/IP 的体系结构

TCP/IP 四层协议
TCP/IP 四层协议

这里写图片描述
TCP/IP 族
notes:TCP/IP可以为各式各样的网络提供服务,同时TCP/IP也允许IP在各式各样的网络构成的互联网上运行。

这里写图片描述在应用层的客户进程和服务器进程的交互

相关概念

以太网几乎等同与局域网。
在局域网中硬件地址又称物理地址或MAC地址(应为这种地址用在MAC帧中)。
路由器:是一种具有多个输入端口和多个输出端口的专用计算机。其任务是转发分组。路由器的转发分组是网络层的主要工作。

IP分类IP地址

我们把整个因特网看成是一个单一,抽象的网络。IP地址就是给每个连接在因特网上的每一个主机(或路由器)分配一个全世界范围类唯一的32位标示符。IP地址的结构要是我们在因特网上很方便的寻址。
IP地址的编址方式共经历了三个历史阶段:
1. 分类的IP地址
2. 子网的划分
3. 构成超网
所谓分类的IP地址就是将IP地址分为若干个固定类。每一个类都有两个字段组成。第一个字段是网络号(net_id),标志着所连接到的网络。第二个字段是主机号(host_id),标志着主机或路由器。这种两级IP可以记为:
IP地址 ::={<网络号>,<主机号>}
A类地址:0网络号主机号

建立URL连接

URL(uniform resource locator)统一资源定位符————可以打开到达资源的流
URI(uniform resource identifier)统一资源标识符————作用是解析
URI句法 :
[schema:]schemeSpecificPart[#fragment]
包含schema是绝对URI ,反之是相对URI
schemeSpecificPart 不是以/开头 是不透明的。

使用URLConnection 获取信息

  1. 调用URL的openconnection方法获取URLConnection对象
  2. 设置请求属性
  3. 调用connect方法连接远程资源
  4. 与服务器建立起连接后,可以查看头信息
  5. 最后,访问资源。

版权声明:本文为geduo_feng原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。