CS
TCP : Connection 및 Error Control TCP Flow Control과 Error Control에 대해 살펴보기 앞서, TCP의 기본 개념과, 패킷, Error Control에서의 Window Size에 대해서 잘 모른다면 해당 글을 먼저 참고하고 오면 좋을 것 같다. https://sjh9708.tistory.com/193 [Network] TCP (1) : Connection과 Handshake, 그리고 TCP Error Control 전송 계층 (Transport Layer) 프로토콜 : TCP (Transmission Control Protocol), UDP (User Datagram Protocol) 양 끝 노드의 프로세스-프로세스간의 논리적 통신 제공, 네트워크 계층에서 설..
전송 계층 (Transport Layer) 프로토콜 : TCP (Transmission Control Protocol), UDP (User Datagram Protocol) 양 끝 노드의 프로세스-프로세스간의 논리적 통신 제공, 네트워크 계층에서 설정한 경로로 하나의 프로세스에서 다른 프로세스로 전송한다. 효율적 데이터 전송, 데이터의 신뢰성 검사 Network layer은 호스트 간의 통신 및 문제 해결, Transport layer은 프로세스 간의 통신 및 문제 해결 Segment Transport Layer에서의 데이터 단위, 메시지의 조각 왼쪽에서 TCP data가 가질 수 있는 최대 byte = 1460byte - 총 1500 byte 중, TCP header, IP Header가 20byte씩..
전송 계층 (Transport Layer) 프로토콜 : TCP (Transmission Control Protocol), UDP (User Datagram Protocol) 양 끝 노드의 프로세스-프로세스간의 논리적 통신 제공, 네트워크 계층에서 설정한 경로로 하나의 프로세스에서 다른 프로세스로 전송한다. 효율적 데이터 전송, 데이터의 신뢰성 검사 Network layer은 호스트 간의 통신 및 문제 해결, Transport layer은 프로세스 간의 통신 및 문제 해결 Segment Transport Layer에서의 데이터 단위, 메시지의 조각 왼쪽에서 TCP data가 가질 수 있는 최대 byte = 1460byte - 총 1500 byte 중, TCP header, IP Header가 20byte씩..
IP 주소 체계의 단점 IPv4 주소 체계는 32비트 주소 공간을 제공하며, 약 43억 개의 주소를 나타낸다. 그러나 인터넷의 확산에 따라서 공용 IPv4 주소의 고갈이 발생했다. 실제로 2015년, ARIN에서 아이피 주소가 고갈되었다고 밝혔다. 또한 IP가 조직별 블록으로 할당되며, 이러한 할당 방식은 종종 각 조직이 필요한 주소보다 더 큰 블록을 할당받게 됨으로써 주소 공간의 낭비를 초래하였다. 이를 극복하기 위해서 IPv6와 NAT이 등장하였다. IPv6 주소 체계는 128비트의 값을 가져 2^128개의 기하급수적인 주소를 할당할 수 있다. 공인 IP와 사설 IP 공인 IP (Public IP) 외부에 공개되어 있는 IP 공인 IP는 전 세계적으로 고유하며 인터넷 상에서 라우터, 서버, 네트워크 ..
Network Layer 네트워크 계층은 OSI 모델이나 TCP/IP 모델에서 호스트 간 통신을 관리하고 데이터의 경로 설정과 전송을 담당하는 계층이다. 한 호스트에서 다른 호스트로의 라우팅(경로 설정 + 경로 결정)을 담당하면서 최적의 데이터 경로를 설정한다. Packetizing 모든 Layer에서 수행되는 기능. Segment를 받아서 Network layer에서 사용할수 있는 데이터 단위로 바꿔준다.(Encapsulation, Decapsulation) Network Layer는 철저하게 Payload(데이터)를 열어보지 않는다는 철칙이 있다.(편지를 보낼 때 우체국에서 열어보지 않는다) 그러나 특정 경우에는 까봐야 하는 경우도 생길 수 있음. Routing and forwarding Routin..
네트워크 주소 체계 우선 네트워크에서 사용되는 Port, MAC, IP 등 주소의 종류와 주소 형식 체계에 대해서 살펴보자 Port 컴퓨터 내에서 특정 프로세스를 식별하는 데 사용 -> 같은 IP 주소 상의 호스트들을 구분 TCP/IP 프로토콜에서는 포트 번호를 사용하여 특정 프로세스나 서비스를 식별한다. 예를 들어, 웹 서버는 보통 80번 포트를 사용한다. 포트 번호는 랜덤하게 생성되며, 특정 서비스에 대한 예약된 포트 번호를 제외하고 호스트의 프로세스에 할당된다. Physical Addressing (MAC Address) 물리적 주소 체계는 네트워크에서 데이터 링크 계층에서 사용되며, 네트워크 인터페이스 카드(NIC)에서 실제로 사용되는 주소이다. MAC(Media Access Control) 주소..
네트워크는 결국 데이터를 전송하기 위한 연결 인프라를 의미한다. 네트워크에서의 데이터를 전송할 때의 주요 개념들에 대해서 살펴보자. 프로토콜 네트워크나 컴퓨터 등에서 데이터를 주고받는 데 사용되는 규칙과 절차의 집합. 예를 들어, 인터넷에서 주로 사용되는 프로토콜 중 하나는 TCP/IP 프로토콜이 있다. 데이터 전송 데이터 전송 시 수신자와 발신자 사이에서는 데이터가 전달되기 위해 Encapsulation과 Decapsulation 과정이 발생한다. 이러한 과정은 OSI 모델의 각 계층에서 수행되며, 데이터가 한 계층에서 다음 계층으로 전달될 때 일어난다. Encapsulation(인캡슐레이션) : 통신 과정에서 데이터에 헤더(주소 등 부가적 데이터)가 추가되며, Data-link layer에서는 트레일..
네트워크(Network) 컴퓨터나 다른 장치들이 상호 연결되어 데이터를 주고받을 수 있는 구조. 네트워크는 유선 또는 무선으로 연결된 디바이스들 간에 정보를 교환하고 자원을 공유하는 데 사용된다. LAN(Local Area Network) : 한정된 지역 내에서 사용되는 네트워크, 일반적으로 한 건물 또는 사무실 내에서 사용 WAN(Wide Area Network) : 넓은 지역을 커버하는 네트워크, 지리적으로 분산된 지역을 연결하는 데 사용 ((ex)인터넷) 인터넷 전세계적으로 연결된 많은 네트워크들의 집합체, 이를 통해 사용자들은 정보를 교환하고 통신할 수 있다. ISP(인터넷 서비스 공급업체, ex) KT, SKT, LG..)들의 Network라고 볼 수도 있다. 네트워크의 구성 네트워크의 구성 :..
Builder Pattern Builder 패턴은 객체 생성 과정을 분리하여 복잡한 객체를 단순화하는 디자인 패턴이다. 이 패턴은 객체의 생성과 표현을 분리하여, 서로 다른 방식으로 객체를 만들 수 있게 한다. 특히 매개변수가 많고 다양한 조합이 가능한 경우에 효과적이다. Product : Builder 패턴을 통해 생성되는 복잡한 객체Builder : 객체를 생성하기 위한 메서드를 정의하는 인터페이스Concrete Builder : Builder 인터페이스를 구현하여 실제로 객체를 생성하는 클래스Director : Builder 패턴을 사용하는 클라이언트 Builder 패턴 예시 public class NutritionFacts { private final int servingSize; ..