개념

· 개념
DNS Cf. L1 ~ L4 : Infrastructure 역할 수행 애플리케이션 수준에 존재하는 서비스 중에서도 Infrastructure에 해당하는 것들이 존재한다. 대표적인 것이 DNS(Domain Name Service) 체계이다. 분산 구조형 데이터베이스 데이터베이스 시스템(DNS 네임서버)의 분산 구성 데이터의 영역별 구분(Domain Zone) 및 분산관리 도메인의 네임서버 및 도메인 데이터는 해당 관리주체에 의해 독립적으로 관리된다. 트리(tree) 구조의 도메인 네임(Domain Name) 체계 Domain : 영역, 영토를 의미 도메인 네임의 자율적 생성 생성된 도메인 네임은 언제나 유일(Unique)하도록 네임 체계 구성 Domain 구조 www.naver.com 위의 URL주소에서 ..
· 개념
TCP와 UDP '연결' 이라는 개념 TCP에만 연결(Connection, Session, Circuit) 개념이 존재한다. 연결은 결과적으로 순서번호(Sequence Number)로 구현된다. 이는 1, 2, 3, … 과 같이 증가하는 것이 아니라, 차지하는 바이트(byte) 수만큼 증가한다. 예를 들어 첫번째 세그먼트(Segment)의 크기가 400byte라면 두번째 세그먼트는 401의 Sequence Number를 가지게 된다. 연결은 상태(전이) 개념을 동반한다. TCP 연결 과정(3-way handshaking) 연결 과정 중에는 헤더(Header)와 페이로드(Payload)로 나뉜 일반적인 형태의 세그먼트가 아닌 IP 주소, TCP 주소가 존재하는 헤더만 존재하는 형태의 세그먼트가 오간다. 연..
· 개념
TTL과 단편화 TTL(Time To Live) 세포의 텔로미어같은 역할을 수행한다. 라우터에서 다른 어떤 라우터를 지날 때 이 단위를 **홉(Hop)**이라고 하는데, 하나의 홉을 지날 때마다 TTL값이 1씩 낮아지다가 TTL값이 0에 이르도록 경로를 찾지 못하면 폐기된다. 단편화(Fragmentation) 단편화는 MTU 크기 차이로 발생한다. 수신하는 측의 MTU가 송신측보다 작을 때 (안그래도 작은) 패킷을 다시금 잘라서 전송하는 것을 의미한다. 이 때 패킷은 기존 패킷의 IP Header가 복제되고, 페이로드는 이등분되어 각 페이로드가 헤더가 붙는 형태로 쪼개지게 된다. 단편화는 다음 라우터의 MTU가 자신의 MTU 보다 작아 패킷이 쪼개져야할 때 수행된다. 쪼개져서 전달된 패킷은 통상적으로 수..
· 개념
Broadcast IP 주소 일반적으로 L2(Data-Link Layer)에서 MAC 주소를 가지고 통신함에 있어서 `FF-FF-FF-FF-FF-FF`은 브로드캐스팅을 위한 주소이다. L3(Network Layer)에서는 IP 주소의 호스트 부의 비트(bit)를 모두 1로 채우면 해당 네트워크에 방송(브로드캐스팅)하겠다는 것으로 인식된다. 예를 들어 192.168.0.255/24 (IP 주소가 192.168.0.255이고, 서브넷 마스크가 255.255.255.0인 경우)의 경우 호스트 부인 마지막 8bit가 모두 1인 것을 볼 수 있다. (255 -> `1111 1111`) 특수 목적의 IP 더불어서 네트워크에서 호스트에 할당할 수 없는 IP들은 아래와 같다. 호스트 부가 0인 경우 : 이는 곧 호스트..
· 개념
IP 주소 일반적으로 네트워크 계층 식별자인 IP 주소는 컴퓨터나 라우터에 고유한 주소로 할당되어 네트워크 통신시 상대를 특정 호스트로 지정할 수 있다. 전세계의 모든 호스트의 IP 주소는 유일해야 하기 때문에 IP 주소는 유한한 리소스이다. 현재 일반적으로는 IPv4를 사용하고 있다. 추후에 더 많은 IP 주소를 할당할 수 있게 되는 IPv6로 대체될 것이라고 예상되지만 아직은 일반적으로 IP 주소라고 하면 IPv4를 의미한다. IPv4를 기준으로 IP주소는 32bit로 구성된다. 때문에 0과 1를 이용해 아주 길게 표현할 수 있는데, 이는 너무 길고 복잡하기 때문에 1byte가 되는 8bit씩 4개의 옥텟으로 나누어 각 그룹을 십진수로 표현하고, 각 그룹을 `.`으로 구분하는 형식으로 표기한다. 서브..
· 개념
네트워크 계층 네트워크 계층은 크게는 하드웨어단과 소프트웨어단으로 나누고 소프트웨어단은 다시 Kernel mode와 User mode로 나뉜다. 하드웨어를 설명하는 단어는 Physical 이라고 할 수 있다. 즉, 물리적으로 구현된 것을 의미한다. 반대로 소프트웨어를 설명하는 단어는 Logical 즉, 논리적으로 구현된 것이다. 논리적이라는 의미로 사용 되는 Logical 대신 사용되기도 하는 단어로 Virtual 이 있다. 물리적으로 구현된 하드웨어를 논리적으로 구현하는 것이 가능할까? 답은 가능하다. 흔히 CPU(하드웨어에 속함)은 Machine 이라고 표현한다. 이러한 CPU를 논리적으로 구현한 것을 Virtual Machine , VM 이라고 표현한다. 이렇게 하드웨어를 논리적으로 구현하는 것을 ..
· 개념
인터럽트(Interrupt)란? 프로그램을 실행하는 도중에 예기치 않은 상황이 발생할 경우 현재 실행중인 작업을 중단하고 발생된 상황을 처리한 후 다시 실행중인 작업으로 복귀하는 것을 의미한다. 인터럽트의 종류 인터럽트는 크게 외부 인터럽트, 내부 인터럽트, 소프트웨어 인터럽트로 나뉜다. (중요도는 소프트웨어 인터럽트가 가장 낮다.) 외부 인터럽트 🔥 원인이 외부에서 기인한 인터럽트를 의미한다. 전원 이상 인터럽트(Power fail interrupt) : 정전, 파워 이상, 절전 모드(?) 등 기계 착오 인터럽트(Machine check interrupt) : CPU의 기능적인 오류 외부 신호 인터럽트(External interrupt) 타이머에 의한 인터럽트 : preemptive(선점형) 개념을 생..
· 개념
해당 글은 노마드 코더의 '세션 vs 토큰 vs 쿠키? 기초개념 잡아드림. 10분 순삭!' 영상의 내용을 기억하기 위해 작성한 글입니다. Cookie 브라우저에 저장됨. 즉, 웹에서만 사용 가능하고 앱에서는 사용 불가 -> 이런 경우 앱에서는 쿠키 대신 토큰(token) 사용 서버의 response로부터 브라우저에 저장하고자 하는 데이터를 쿠키로 저장 저장 후에는 해당 웹사이트에 방문시마다 브라우저는 해당 쿠키도 request와 함께 전송하게 됨 쿠키는 도메인에 따라 제한됨. 즉, 특정 웹사이트에서 받은 쿠키는 해당 웹사이트에만 전송됨 쿠키는 유효 기간이 존재. ex) 하루, 일주일, 한달 등 인증 뿐만 아니라 여러 정보를 저장 가능. ex) 언어설정 등의 사용자 설정 Token 서버에 토큰을 보냄으로써..
devYH
'개념' 카테고리의 글 목록