Computer Network
[Networks] Networks Under Attack
[Networks] Networks Under Attack
2023.05.24이 글은 보호되어 있기 때문에 이것을 보려면 암호가 필요합니다.
[Networks] Protocol Layers and Their Service Models
[Networks] Protocol Layers and Their Service Models
2023.05.21인터넷에는 여러 개의 애플리케이션, 프로토콜, 여러 종류의 종단 시스템, 패킷 스위치, 그리고 여러 종류의 link-level 미디어가 있습니다. 이 복잡한 인터넷을 네트워크 구조로 표현해보고자 합니다. Layered Architecture 먼저, 인간과의 유사성을 살펴보겠습니다. 우리는 매일매일 복잡한 신체 시스템과 함께 살아갑니다. 누군가가 당신에게 항공 시스템에 대해서 설명을 부탁했다고 상상해보겠습니다. 항공기 체크인/체크아웃, 수화물, 게이트 직원, 조종사, 항공기, 그리고 항공 시스템 등으로 엮인 이 복잡한 시스템을 어떻게 설명할 수 있을까요? 이 시스템을 설명하는 방법 중 하나는 당신이 항공기를 타고 목적지에 도착하는 일련의 과정을 설명하는 방법입니다. 대부분의 사람은 위 그림과 같은 과정을 ..
[Networks] Delay in Packet-Switched Networks
[Networks] Delay in Packet-Switched Networks
2023.05.18패킷들은 하나의 호스트(Source) 로부터 출발하여 여러 개의 라우터를 거치며, 마지막에는 또다른 호스트(Destination) 에서 멈춥니다. 이런 과정에서, 패킷은 이동하며 거치는 노드들에서 여러 종류의 지연을 경험할 것입니다. 발생하는 지연들 중 대표적인 것은 아래와 같습니다. Nodal processing delay Queuing delay Transmission delay Propagation delay 이러한 지연들이 누적되어 Total Nodal Delay가 발생합니다. 검색, 웹 브라우징, 이메일, 지도, 네트워크를 이용하는 메시지, VOIP 등과 같은 많은 인터넷 애플리케이션들의 성능은 이런 네트워크 지연에 굉장히 많은 영향을 받습니다. Types of Delay 위 그림에서, 패킷은 ..
[Networks] Circuit Switching
[Networks] Circuit Switching
2023.05.16스위치나 링크 네트워크를 통하여 데이터를 옮기는 데에는, 크게 두가지 접근 방식이 존재합니다. 그 두가지 방식은 Packet Switching 와 Circuit Switching 입니다. 이번 글은 Circuit Switching 에 대하여 작성한 글입니다. Circuit Switching 방식을 사용하는 네트워크에서는, end system 사이에서 이루어지는 통신에 필요한 자원을 예약하여 사용하는 것이 특징입니다. Packet Switched Network 에서는 이런 자원들을 예약하지 않고, 필요에 따라 사용합니다. 그렇기에 통신 링크를 사용하기 위해서는 앞에 먼저 링크를 사용하고 있는 통신이 있을 때, Queue에 잠시 대기해야 하는 상황이 발생하기도 합니다. 책에서는 Packet Switched ..
[Networks] Store and Forward Transmission
[Networks] Store and Forward Transmission
2023.05.15대부분의 패킷 스위치(라우터)들은 store-and-forward transmission을 사용합니다. 이는 패킷 스위치가 Source로부터 모든 패킷을 받고 난 후에, Outbound Link로 전송을 시작하는 방식을 의미합니다. * Source : 패킷을 보내는 출발지 * Destination : 패킷을 받아야하는 목적지 * Outbound Link : Destination 쪽으로 가는 링크입니다. 다른 스위치와 이어져있습니다. 만약 Source가 각각 L bits 인 패킷 3개를 Destination에게 전송한다면, 패킷 스위치가 첫번째 패킷을 먼저 수신합니다. 그럼 패킷 스위치의 '모든 패킷을 수신하고 나서, Outbound Link로 패킷 전송을 시작한다' 라는 특성 때문에, 먼저 받은 패킷을 ..
[Networks] URI와 PURL
[Networks] URI와 PURL
2023.03.09URI(Uniform Resource Identifier) 웹 서버 리소스는 각자 이름을 갖고있다. www/index.html image/caputdraconis.png와 같다. 이러한 리소스의 이름을 사용해 클라이언트는 관심 있는 리소스를 지목할 수 있다. 이러한 서버 리소스 이름을 통합 자원 식별자, URI(Uniform Resource Identifier) 라고 부른다. http://www.caput.dev/images/chewchewkim.jpg 위와 같은 URI는 HTTP 프로토콜에서 아래의 그림과 같이 해석된다. HTTP는 주어진 URI로 클라이언트가 찾고자 하는 객체를 찾아온다. 이러한 URI에는 URL과 URN 두 가지가 있다. URL(Uniform Resource Locator) 통합 자..
[Networks] AWS 로드 밸런싱 - ALB
[Networks] AWS 로드 밸런싱 - ALB
2022.01.20Resource Name Detail Setting VPC My-VPC IPv4 CIDR : 20.0.0.0/16 ELB-VPC IPv4 CIDR : 10.0.0.0/16 Public Subnet ELB-Public-SN-1 IPv4 CIDR : 20.0.0.0/24, ap-northeast-2a ELB-Public-SN-1 IPv4 CIDR : 20.0.0.0/24, ap-northeast-2a My-Public-SN IPv4 CIDR : 20.0.0.0/24, ap-northeast-2a Public Routing Table ELB-Public-RT Subnet : ELB-Public-SN-1, ELB-Public-SN-2 IGW : ELB-IGW My-Public-RT Subnet : My-Publ..
[Networks] OSI 7 계층 정리
[Networks] OSI 7 계층 정리
2022.01.17/* [IT 엔지니어를 위한 네트워크 입문]을 보며 공부한 내용을 정리한 글입니다. 학습을 목적으로 본 글을 참고하시는 것을 적극적으로 비추천합니다. */ OSI 7 계층이란? 과거에는 통신용 규약이 표준화되지 않았고 별도로 개발했기에 호환되지 않는 시스템이나 애플리케이션이 많았고 통신이 불가능했습니다. 이를 하나의 규약으로 통합하려는 노력이 만들어낸게 현재의 OSI 7 계층입니다. 1~4 계층(Phsical Layer ~ Transport Layer) : Data Flow Layer / 하위 계층 5~7 계층(Session Layer ~ Application Layer) : Application Layer / 상위 계층 1 계층 Physical Layer 1 계층은 물리 계층으로, 이름처럼 물리적 연결..
[AWS] 엔드포인트 실행 결과 비교
[AWS] 엔드포인트 실행 결과 비교
2022.01.12/* 정보글이 아닌, 공부한 내용을 정리한 글입니다. 정보가 필요하시다면 다른 글을 찾아보시는게 졓을 것 같숩니다 : ) */ 환경 설정은 다음과 같습니다. 아래 작성된 순서대로 설정합니다. 밑에서 언급하지 않는 설정은 AWS 기본 설정으로 합니다. VPC Name : Test-VPC IPv4 CIDR : 10.0.0.0/23 (2개의 서브넷을 구성하기 위해서 prefix를 23으로 설정했습니다.) Subnet Name : Public-SB VPC : Test-VPC(위에서 생성한 VPC) 가용 영역 : ap-northeast-2a IPv4 CIDR 블록 : 10.0.0.0/24 Name : Private-SB VPC : Test-VPC(위에서 생성한 VPC) 가용 영역 : ap-northeast-2a ..
[AWS] VPC란? VPC 엔드포인트 설정
[AWS] VPC란? VPC 엔드포인트 설정
2022.01.11이 글은 보호되어 있기 때문에 이것을 보려면 암호가 필요합니다.
[Networks] TCP timers
[Networks] TCP timers
2021.11.10/* TCP에 존재하는 타이머들에 대해서 작성한 글입니다 */ Retransmission Timer, Persistence Timer, Keepalive Timer, TIME-WAIT Timer에 대해서 알아보겠습니다. Persistence Timer(영속 타이머) 교착 상태(Deadlock)를 해결하기 위하여 사용되는 타이머입니다. 송신자 측에서는 수신자 측으로부터 rwnd가 0이라는 ACK을 받음과 동시에 이 영속 타이머를 동작하게 됩니다. 타이머가 만료될 때까지 수신자 측으로부터 rwnd가 갱신이 되지 않았다면, 송신자 측은 수신자에게 '아직도 rwnd 0이야?'라는 느낌의 probe 세그먼트를 보내게 됩니다. 수신자 측에서 이 probe 세그먼트를 받게 되면, 이 세그먼트에 대한 ACK과 함께 r..
[Networks] Why is TCP Fair?
[Networks] Why is TCP Fair?
2021.11.10우선 TCP가 fair한지 아닌지를 판단하기 위해서 TCP의 특징인 congestion control(혼잡 제어)에 대해서 알고 있을 필요가 있습니다. TCP는 Time-out 혹은 3 Duplicative Acks와 같은 혼잡 상황을 detect하여 상황에 맞게 Slow Start(SS), Addictive Increase(AI), Multiplicative Decrease(MD)와 같은 과정들을 거치게 됩니다. 바로 이 전체 과정을 Congestion control, 혼잡 제어라고 합니다. 이는 UDP와 구분되는 TCP만의 특징으로, UDP는 혼잡한 상황인지 아닌지를 detect하지 않고 그냥 보내는데에 비해, TCP는 상황에 맞게 보내는 양을 유연하게 조절하며 혼잡을 최소화합니다. Congestio..