云计算K8s系列---- 网络CNI

CNI(Container Network Interface)是 CNCF 旗下的一个项目,最早是由CoreOS发起的容器网络规范,由一组用于配置 Linux 容器的网络接口的规范和库组成,同时还包含了一些插件。


云计算容器系列---- Docker network

容器网络的建立和控制是一种结合了network namespace、iptables、linux网桥、route table等多种Linux内核技术的综合方案,在宿主机和容器内分别创建虚拟接口,并让它们彼此连通。

  • network namespace:主要提供了关于网络资源的隔离,在网络栈中,包括网卡(Network Interface)、回环设备(Loopback Device)、路由表(Routing Table)和 iptables 规则、IPv4和IPv6协议栈、/proc/net目录、/sys/class/net目录、端口(socket)等。
  • linux Bridge:功能相当于物理交换机,为连在其上的设备(容器)转发数据帧。如docker0网桥。
  • iptables:主要为容器提供NAT以及容器网络安全。
  • veth pair:两个虚拟网卡组成的数据通道。在Docker中,用于连接Docker容器和Linux Bridge。一端在容器中作为eth0网卡,另一端在Linux Bridge中作为网桥的一个端口。

计算机网络系列(八)---- Http

当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等。 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作原理。其中http是网络的最基本协议,也是我们下面重点了解的协议之一。



计算机网络系列(十七)---- tc

流量控制(Traffic Control, tc)是Linux内核提供的流量限速、整形和策略控制机制。它以qdisc-class-filter的树形结构来实现对流量的分层控制。



计算机网络系列(十三)---- rpc

RPC(Remote Procedure Call)是指远程过程调用,也就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数/方法,由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语义和传达调用的数据。



计算机网络系列(六)---- websocket

WebSocket不是HTTP协议,是基于http协议,HTTP只负责建立WebSocket连接,WebSocket连接相对于http 来说是一个长连接,解决了只能被动响应的问题。


计算机网络系列(四)---- udp

UDP是User Datagram Protocol的简称,中文名是用户数据报协议,是OSI参考模型中的传输层协议,它是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。


计算机网络系列(十一)---- tls/ssl

SSL:(Secure Socket Layer,安全套接字层)/TLS(Transport Layer Security) 传输层安全性协议,为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密(Encryption)技术,可确保数据在网络上之传输过程中不会被截取。当前版本为3.0。它已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。


计算机网络系列(九)---- rest

经常搞不清楚我们常说的HTTP API和Restful API是什么关系,HTTP API是Restful API的实现和表现,Restful API是HTTP API的基础,提供了标准接口和规范。



计算机网络系列(二)---- icmp

ICMP全名为(INTERNET CONTROL MESSAGE PROTOCOL)网络控制消息协议,属于TCP/IP协议族,工作在网络层(第三层),用于在IP主机、路由器之间传递控制消息,主要用于主机探测,路由维护,路由选择,流量控制。


计算机网络系列(七)---- dns

DNS就是域名系统,是因特网中的一项核心服务,是用于实现域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。


计算机网络系列(十四)---- connect

连接实际上是操作系统内核的一种数据结构,称为TCP控制块(TCB),对于linux而言是tcp_sock结构。不光连接,连数据包也是由一个数据结构来控制,linux里面称为sk_buff结构。完成三次握手就是连接,完成四次握手就是连接关闭。握手其实就是服务端和客户端都获取解析对方数据的方式(四元组是指source ip,source port,target ip,target port),放到对应的位置。这样两者就能一对一处理了,数据其实还是通过网卡传输的,但我只处理我认识的数据。这样比较好理解。


计算机网络系列(十)---- https

HTTPS实际上就是HTTP穿上了SSL/TLS的外套,我们都知道HTTP属于应用层的协议,是离程序员比较近的,而SSL(安全套接字)与TLS(运输层安全)都属于运输层协议。其实SSL与TLS都是上个世纪的产物,最新版本的TLS建立在SSL 3.0协议规范之上。


计算机网络系列(三)---- tcp

传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。


计算机网络系列(一)---- Ip

IP(Internet Protocol , 互联网协议)主要用于互联网通信。IP协议用于将多个包交换网络连接起来,负责第三层网络层的通信(再往下就是二层链路层mac地址的通信),他是在源地址和目的地址之间传输数据报,还提供对数据大小的重新组装功能,以适应不同网络的要求。


计算机网络系列(五)---- socket

我们在tcp/ip中提到,ip提供了地址,tcp封装了接口,最后构建socket编程接口,所以Socket 就是编程接口(API),是对 TCP/IP 的封装,对外提供的接口,屏蔽了各个协议的通信细节,使得程序员无需关注协议本身,直接使用socket提供的接口来进行互联的不同主机间的进程的通信。