Littledriver's Blog

2020

Jan 11

几个和网络分层有关的问题

Q1: TCP 在进行三次握手的时候,IP层和MAC对应都有什么操作呢? PS: 这里IP层和MAC层的说法是不准确的,应该是网络层和数据链路层。但是为了方便理解和举例就暂时这样使用。 当数据包来到IP层的时候,说明发送方已经知道了接收方的IP地址。所以,在IP层,这个数据包会在头部加入源IP和目的IP以及相应的字段,然后继续向下层传输。 而MAC层作为IP层的下一层,自然接收到的包就是一个IP数据报。MAC层上最重要的一个任务就是将接收方的MAC地址和发送方的MAC地址放在以太网帧的头部。为了达到这个目的,MAC层需要获得接收方的MAC地址。它会先去查阅缓存,查看是否有接收方IP地址对应的MAC地址的记录。如果有的话,则直接使用它。否则,则要通过ARP协议,根据IP寻找对应的MAC地址。 这也就是说,即使我们常说的TCP三次握手过程是发生在传输层的,但是其他层也是有参与的。只要是数据 …

2019

Dec 1

The smallest schedulable unit in Kubernetes — Pod

Overview As I have mentioned in the previous blog, lots of technologies the Kubernetes relies on are created with the help of the operating system. For example, the container is the specific process that corporates with the CGroup and Linux Namespace on OS. However, there is another essential OS concept used in Kubernetes: process group. It means one process group includes several processes. Those …

more

Sep 15

Kubernetes 的基石 — 容器技术

Overview 随着容器技术的诞生和发展,它不再仅仅是一个发布你所开发软件的新姿势,更是在后端开发生态中,慢慢的成为了工程师开发模式的一部分。 容器技术最核心的一个优势,就是抹平了由于开发环境和部署环境的差异导致的部署线上服务困难的问题。任何一个以“容器”,都会被独立发布和部署。并且在“构建”的过程中,可以同时将服务所依赖的“环境”进行打包,从而保证了线上和本地的环境一致,减少部署过程中出现的问题。 除此之外,容器技术的实现借助了 Linux 操作系统中两个比较重要的技术 Namespace 和 Cgroup。前者让某一个容器运行起来之后可以在环境或者说是视图上保持良好的隔离性,后者则让一个容器在使用操作系统提供的资源的时候,与其他容器甚至是宿主机产生良好的隔离。 另外,对于容器技术值得提及的一点就是。虽然它所实现的『隔离性』不及虚拟机提供的那样完善,但它在性能上以及资源占用上表现的要比 …

more