목록분류 전체보기 (141)
공부하는 스누피

데이터 링크 계층(Data Link layer, DL layer)은 OSI 7계층의 2계층으로, 인접한 두 노드 사이의 통신을 담당한다. 이때 각 노드는 호스트, 라우터, 스위치, WIFI AC가 될 수 있다. 한 링크에서 전송 노드는 데이터그램(패킷)을 링크 계층 프레임으로 캡슐화해서 링크로 전송한다. DL 계층이 하는 일 5가지 1) Hop to Hop/Node to Node Delivery (노드 간 통신) DL의 기본 서비스는 단일 링크상으로 데이터그램을 이동시키는 것이지만, 세부 작동은 특정 링크 계층 프로토콜을 따른다. 2) Flow Control (흐름 제어) 각 링크마다 속도가 다르기 때문에 병목 현상을 해결하기 위한 흐름 제어 프로토콜을 사용한다. 트랜스포트 계층(TP)은 출발지-목적지 ..
네트워크 인터페이스 카드(NIC; Network Interface Card) - 컴퓨터와 컴퓨터 또는 컴퓨터와 네트워크를 연결하는 장치. - 정보를 전송할 수 있도록 정보 형태를 변경한다. - 이더넷 카드(LAN 카드)라고도 한다. 허브(Hub) - 가까운 거리의 호스트들을 연결하는 장치. - 각 회선을 통합적으로 관리하며, 리피터의 역할(신호 증폭)도 한다. - 종류 => 더미 허브: 연결만 함. Star 구조이고, LAN이 보유한 대역폭을 컴퓨터 수만큼 나누어 제공한다. => 스위칭 허브: 데이터 흐름을 제어하여 각 노드가 허브의 최대 대역폭을 사용할 수 있게 함. + 대역폭이란? 데이터를 주고 받을 수 있는 통신 링크의 용량이다. 쉽게 이야기하자면 대역폭을 100개의 자원이라고 하고 컴퓨터 수는 1..
velog.io/@rxjw95/ErrorSpring-boot%EC%97%90%EC%84%9C-Transactionaloption%EC%9D%B4-%EB%90%98%EC%A7%80-%EC%95%8A%EB%8A%94-%EA%B2%BD%EC%9A%B0 [Error]Spring boot에서 Transactional(option)이 되지 않는 경우 어이없는 문제를 찾아버렸다... velog.io Transactional 어노테이션을 사용하기 위해 어떤 패키지를 import했는지 다시 한번 체크해보자... javax면 readOnly를 사용할 수 없다....

인터넷 네트워크 계층 패킷을 데이터그램이라 부른다. 데이터그램을 교환하도록 하는 통신 규약은 IP(Internet Protocol)로 데이터가 정확하게 전달될 것을 보장하지 않고, 중복된 패킷을 전달하거나 패킷의 순서를 잘못 전달할 가능성도 있다. 통신의 신뢰성은 상위 레이어에 있는 TCP(UDP 일부)가 보장한다. 현재 사용 중인 IP는 두 가지 버전이 있는데, IPv4와 IPv4를 대체하도록 제안된 IPv6이 있다. IPv4 IPv4는 전 세계적으로 사용된 첫 번째 통신 규약이다. IPv4의 주소 체계는 12자리이고 네 부분으로 나뉜다. 주소는 각각 32bit로 구성되어 있으며 인터넷 사용자의 증가로 인해 2011년부터 할당이 중지되었다. IPv4 데이터그램의 주요 필드 - 버전 번호: 4비트로 데이..

www.aladin.co.kr/shop/wproduct.aspx?ItemId=34083680 클린 코드 Clean Code 로버트 마틴은 이 책에서 혁명적인 패러다임을 제시한다. 그는 오브젝트 멘토(Object Mentor)의 동료들과 힘을 모아 ‘개발하며’ 클린 코드를 만드는 최상의 애자일 기법을 정제해 책 한 권에 담았 www.aladin.co.kr 클린 코드는 오프라인에서도 개발 지식을 얻을 수 있다는 것을 알게 해준 책이다. 다소 건방져보일지는 모르겠지만 개발 관련 지식은 인터넷에서 찾는 것이 더 빠르고, 최신 정보를 찾을 수 있다고 생각했다. 물론 일부 신기술이나 API는 그렇게 공부하는 것이 더 낫다고 여전히 생각하지만, 시간이 흘러도 변하지 않을 기본기는 책을 통해 더욱 깊고, 정확하게 쌓을..
네트워크가 혼잡해짐에 따라 라우터 버퍼에 오버플로우가 발생해 패킷 지연, 손실 등 문제가 발생한다. 패킷 재전송으로 손실 문제는 해결할 수 있지만, 근본적인 문제(혼잡 원인)는 해결하지 못한다. 그래서 네트워크 혼잡을 일으키는 송신자를 제어하는 방법이 필요하다. 네트워크 혼잡에 대한 예시는 다음과 같다. 1) 라우터가 무제한의 버퍼 공간을 가질 때에도 패킷 도착률이 링크 용량에 가까워짐에 따라 큐잉 지연이 커진다. => 라우터 버퍼에 큐잉된 패킷 수의 제한이 없어 평균 지연도 무제한이 되기 때문. 2) 라우터가 유한한 버퍼 공간을 가질 때, 버퍼 오버플로 때문에 패킷이 손실될 경우 재전송을 수행해야 한다. => 수신측은 패킷을 받았으나 송신측에서 일찍 타임아웃 되어버리면 불필요한 재전송을 수행한다. 3)..

데이터 전송 프로토콜은 손실된 패킷과 손상된 패킷 등에 대해 응답하는 방법을 정해두는데, 이 방법에 따라 버퍼링 조건이 달라진다. 파이프라인 오류 회복의 기본적인 접근법으로 Go-Back-N(N부터 반복, GBN)과 Selective Repeat(선택적 반복, SR)가 있다. GBN과 SR을 시각적으로 나타낸 웹사이트가 있다. 전송되고 있는 블록을 클릭하면 사라진다! www2.tkn.tu-berlin.de/teaching/rn/animations/gbn_sr/ Selective Repeat / Go Back N www2.tkn.tu-berlin.de Go-Back-N 송신자는 확인응답을 기다리지 않고 최대 허용된 수 안에서 여러 패킷을 전송할 수 있다. 송신자 관점에서 확인응답(ACK)이 안된 가장 오래..

CDN이란? 엄청난 스트리밍 트래픽을 분배하는 문제를 해결하기 위해 주로 사용되는 네트워크인 콘텐츠 분배 네트워크(Contents Distribution Network, CDN)이다. CDN는 분산된 서버들을 운영해 데이터의 복사본을 분산 서버에 저장한다. 사용자는 최선의 서비스를 제공할 수 있는 지점의 CDN 서버로 연결된다. CDN 서버 위치 - Enter Deep: 서버 클러스터를 세계 곳곳의 접속 네트워크에 구축하는 방식. 서버를 사용자와 최대한 가까이 위치시킨다. 구글은 14개의 메가 데이터 센터를 세계 곳곳에 위치시켰다. 단점은 유지비용이 커진다는 것이다. - Bring Home: 적은 수의 핵심 지점에 큰 규모의 서버 클러스터를 구축하는 방식이다. 클러스터를 IXP에 배치시켜 사용자에게 데이..