測試開發之网络篇-常用服務协议
原創-
2021-05-25 14:10:30
-
2286
TCP/IP
TCP/IP協議是當今互聯網所采用的協議。它不僅包含TCP、IP兩個部分,而是由FTP、SMTP、TCP、UDP、IP等協議構成的一個協議簇。TCP/IP協議的第4層-網絡層,負責創建主機間的網絡連接,以及完成基于IP的尋址和轉發功能。
DNS
DNS(Domain Name System,域名系统)是一项域名解析服務。它将域名解析成IP地址,以方便大家使用容易记忆的英文字母,来访问互联网。以下示例完成了一次解析,通过ping域名,我们可以得到其IP地址。
macbook:~ aaron$ ping baidu.com PING baidu.com (39.156.69.79): 56 data bytes 64 bytes from 39.156.69.79: icmp_seq=0 ttl=49 time=33.982 ms 64 bytes from 39.156.69.79: icmp_seq=1 ttl=49 time=34.098 ms 64 bytes from 39.156.69.79: icmp_seq=2 ttl=49 time=34.129 ms --- baidu.com ping statistics --- 3 packets transmitted, 3 packets received, 0.0% packet loss round-trip min/avg/max/stddev = 33.982/34.070/34.129/0.063 ms
本地域名解析
除了借助DNS,当我们通过域名访问内部服務器时,可使用本地的HOSTS文件来完成域名解析,注意这个过程是优先于DNS的。
Windows下文件爲C:\WINDOWS\system32\drivers\etc\hosts,Linux下在/etc/hosts,以下給出一個示例。
macbook:~ aaron$ ping baidu.com PING baidu.com (39.156.69.79): 56 data bytes 64 bytes from 39.156.69.79: icmp_seq=0 ttl=49 time=33.982 ms 64 bytes from 39.156.69.79: icmp_seq=1 ttl=49 time=34.098 ms 64 bytes from 39.156.69.79: icmp_seq=2 ttl=49 time=34.129 ms --- baidu.com ping statistics --- 3 packets transmitted, 3 packets received, 0.0% packet loss round-trip min/avg/max/stddev = 33.982/34.070/34.129/0.063 ms
DHCP
DHCP(Dynamic Host Configuration Protocol,動態主机配置协议)用于给局域网中的主机動態分配可用的IP地址。在Windows下,使用ipconfig命令,可以查看本機所分配的IP地址,Linux下請使用ifconfig代替。
macbook:~ aaron$ ifconfig lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384 options=1203<RXCSUM,TXCSUM,TXSTATUS,SW_TIMESTAMP> inet 127.0.0.1 netmask 0xff000000 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 nd6 options=201<PERFORMNUD,DAD> en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=400<CHANNEL_IO> ether a4:83:e7:8c:45:a1 inet6 fe80::1867:7b0e:305b:87f2%en0 prefixlen 64 secured scopeid 0x8 inet 192.168.0.100 netmask 0xffffff00 broadcast 192.168.0.255 nd6 options=201<PERFORMNUD,DAD> media: autoselect status: active
此處顯示了兩個IP地址:
- lo0 127.0.0.1 是用于本机内部通讯的环回地址。它是一个每台机器都相同、永远有效的虚拟机本地IP地址;
- en0 192.168.0.100 是DHCP服務器为第一块以太网卡分配的動態IP地址。机器关机后,DHCP会为该机器(网卡)保留此地址一段时间。
HTTP/HTTPS
HTTP(HyperText Transfer Protocol,超文本传输协议)是互联网上使用最为广泛的一种协议。您正在使用浏览器阅读的这篇文章,就是使用该协议传输的。HTTPS则是在其基础上,实现了加密。
HTTP/HTTPS是一个无连接、无状态的应用层协议。也就是说,浏览器通过它向服務器发出请求获取响应后,连接就被關閉了。浏览器和服務器间,采用了一个叫做Session(会话)的机制,使得下一个请求过来时,服務器依然知道访问者是谁。服務端识别Session的方法,通常是用请求URL或Header中携带的一个唯一标识(如jsessionid、bearer token、cookie)来起作用的。后续在介绍接口测试时,我们会进一步进行阐述。
WebSocket
WebSocket在客户端和服務器之间建立持久性的连接,允许服務端主动向客户端推送数据,以实现实时的双向数据传输。它解决了以往使用HTTP协议时,只能单项拉数据,或使用HTTP模拟长连接时,Long Polling资源消耗过大的问题。
WebSocket是應用層協議,是TCP/IP協議的子集,它在連接時通過HTTP協議完成握手。
RPC
RPC(Remote Procedure Call Protocol,远程过程调用协议)多用于当下流行的微服務架构中,方便一台计算机直接调用另一台上的程序,而不需要了解底层的网络技术/协议。RPC可以基于HTTP(应用层)协议,也可以直接在TCP(传输层)协议上实现。
-
禅道産品
禅道開源版 禅道企業版 禅道旗艦版 禅道IPD版 -
核心功能
産品管理 項目管理 質量管理 效能管理 -
使用文檔
基本版手冊 企業版手冊 旗艦版手冊 IPD版手冊 開發中心手冊 -
幫助中心
积分問答 常見問題 論壇交流 使用視頻 Gitee GitHub -
關于我們
關于我們 禅道軟件 最新動態 禅道活動 -
禅道社區
禅道博客 積分排行 積分商城 禅道書院 -
聯系方式
聯系人:金娟 電話:18562856230 微信:18562856230 Q Q:1826606239北京、上海、深圳分部