이더넷은 네트워크 인터페이스의 프로토콜이다. 이더넷이 사용하는 주소값은 IP주소일까? 아니면 MAC주소일까? 네트워크 장비에 연결을 해야되기 때문에, 이더넷은 MAC주소를 알고 있어야 한다. 네트워크는 어떻게 구성할 수 있을까? 네트워크 인터페이스에 존재하는 건 무엇일까?(이더넷) 지금까지 인터넷 계층과 트랜스포트 계층에서 존재하는 프로토콜을 알아보았다. 그렇다면 네트워크 인터페이스에도 존재하는 걸까? 이것을 네트워크 프로토콜이라고 말하기는 잘 모르겠지만, b-programmer.tistory.com 이 글에서 알수 있듯이 네트워크 토폴로지으로 네트워크 맵을 만든다. 이더넷은 단순한 UTP선이기 때문에 다른 장비가 존재해야 네트워크를 구축 할 수 있을것 같다. 이것을 도와주는 장비가 L2스위치다. L2스..
지금까지 인터넷 계층과 트랜스포트 계층에서 존재하는 프로토콜을 알아보았다. 그렇다면 네트워크 인터페이스에도 존재하는 걸까? 이것을 네트워크 프로토콜이라고 말하기는 잘 모르겠지만, 이것들도 어떻게 보면 어떠한 규약이기 때문에, 프로토콜이라고 말해도 틀린 대답은 아니라고 생각한다. 아무튼 그렇게 생각하면 크게 두 가지 프로토콜이 존재한다. 이더넷, WIFI(무선) MAC 주소 네트워크를 식별하기 위해 존재하는 IP주소와 함께 네트워크 장비를 식별하기 위한 주소값이 존재한다. 이 값은 IP주소와 달리 한번 정해지면 바꿀 수 없다고 한다. 맥주소는 OUI(회사 / 벤더 식별 코드 24비트) + 시리얼 코드(24비트)로 구성되어있다. mac주소 표기는 - 1바이트씩 16진수로 변환하고 '-'구분 - 1바이트씩 1..
인터넷 계층에서는 IP,ICMP,ARP가 동작한다고 했다. 이번에는 제 3계층인 트랜스포트 계층에 대해 설명하려고 한다. 트랜스 포트 계층에는 중요한 프로토콜 2가지가 존재한다. TCP와 UDP가 그 주인공들이다. TCP TCP는 IP와 달리 신뢰성이 높은 프로토콜이다. 완벽주의 성향을 가진 TCP는 통신을 할때 응답을 받는다. 즉, 부탁을 하게되면, 반드시 그 부탁을 제대로 받는지 확인작업을 겨쳐야 한다. 신뢰도는 네트워크 세상에서 최강이지만 굉장히 귀찮은 프로토콜이다. 이것을 네트워크 용어로 3 way-handshake라고 부른다. 생각해보면, tcp가 하나뿐일까? 하나일 수도 있지만, 여러개라고 생각해보자. tcp는 굉장히 신중한 녀석이다. 만약 여러개라면, tcp사이에서도 혼란을 야기시킬 수 밖에..
사설 IP 공인 IP 우리는 IP를 이용해서 네트워크를 만들었다. 또, 인터넷이라는 거대한 네트워크가 이미 존재한다. 우리가 학습한 대로 한다면, 특정 그룹으로 네트워크를 구성했기때문에 우리는 인터넷(다른 네트워크)를 이용할 수 없다. 물론 네트워크를 연결하는 무언가를 설치할 수도 있지만, 그것을 설치하기에는 너무 비용이 많이 들것 같다. 왜냐하면 우리만 네트워크를 만들 수 있는 것이 아니기 때문이다. 어떻게 해야할까? 이럴 때 필요한 것이 NAT(Network Address Translation)를 이용하면 된다. NAT는 쉽게말해 우리가 만든 IP주소를 인터넷을 사용할 수 있는 IP주소로 변환시켜주는 역할을 한다. 즉, 네트워크 전용 컨버터라고 할 수 있다. 사설 IP 주소 목록 10.0.0.0 ~ ..
Ip는 네트워크 인터페이스 계층에서 정의되며, 인터넷 계층에서 주력으로 사용되는 프로톨이다. 네트워크 인터페이스 계층에서 정의 되었기 때문에 Ip는 엔드 투 엔드 방식으로 동작한다. 즉, 출발지와 도착지가 명확하다는 이야기다. 데이터 이동 TCP/IP는 총 4계층으로 이뤄져있다. 각 계층은 다음 계층으로 데이터를 전송하고 있다. 데이터는 각 계층마다 서로 다른이름으로 불리고 있다. 이름을 구분 짓는이유는 어떤 계층에서 사용되는 데 b-programmer.tistory.com 여기에서 말했듯이 꼭 도착지가 하나 일 이유일 필요는 없다. 만약, 도착지가 여러개일 경우, 그룹으로 나눌 필요가 있다. 그룹으로 나누는 방법은 비교적 간단하다. 네트워크는 기본적으로 0과1로 이뤄져있다. 데이터가 들어가는 것을 1,..
TCP/IP는 총 4계층으로 이뤄져있다. 각 계층은 다음 계층으로 데이터를 전송하고 있다. 데이터는 각 계층마다 서로 다른이름으로 불리고 있다. 이름을 구분 짓는이유는 어떤 계층에서 사용되는 데이터인지 확인하기 위함이라고 한다. 1계층, 네트워크 인터페이스 계층 이때 전송되는 데이터는 "프레임" 이라고 한다. 프레임은 틀, 구조라는 뜻을 가지고 있다. 데이터이름이 프레임인 이유는 이것이 시작을 알리는 듯한 느낌을 받을 수 있다. 2계층, 인터넷 계층 본격적으로 데이터가 활보하는 시기로, 패킷,데이터 그램이라고 부른다고 한다. JPA의 아버지인 "김영한"님의 말씀을 빌리자면, 패킷은 패키지 + 베스킷의 합성어라고 하셨다. 즉, 묶음이라는 의미라 생각한다. 아무튼 이 계층에서 데이터를 포장하는 느낌으로 전달..
TCP/IP 계층으로 TCP와 IP를 중심으로 만들어진 네트워크 아키텍처. 네트워크 아키텍처는 네트워크 프로토콜들의 집합체이다. 네트워크 인터페이스 계층 모든 네트워크 프로토콜은 이 계층에서 시작된다. 이 계층에서 시작되는 이유는 이 계층이 출입구이기 때문이다. 각 장비에 네트워크를 연결하기 위해서는 어떻게 해야할까? 연결 할 선 같은게 필요하지 않을까? 그래서 이더넷(물리), 무선 네트워크(WIFI)를 통해 각 장비에 네트워크를 주입하는 역할을 한다. 문이기 때문에 연결되는 네트워크 장비가 뭔지는 관심이 없는 그런 계층이다. 인터넷 계층 본격적으로 네트워크를 전송한다. 마치 우리가 이정표를 보고 길을 찾는 것 처럼 어느 네트워크 장비로 라우터를 이용해하여 어디로 이동 시켜줄지 결정하게 된다. 처음 네트..
네트워크는 LAN과 WAN으로 구분되어있다. LAN은 직접 구축하는 것이고 WAN은 LAN을 이어주는 네트워크이다. 보통 네트워크는 구름(cloud)로 많이 그려진다. 사실 이 그림은 라우터, 스위치 L2, 스위치L3가 포함된것이다. 이것을 통해 어디에서 어디로 연결이 되었는지 알 수 있다. 이것을 우리는 인터페이스라고 부른다. 따라서 각 장비들은 서로 인터페이스로 연결되있다는 것을 알 수 있다. 인터페이스 이제 연결시켜 보자. 첫 번째 네트워크에서 두 번째 네트워크로 연결된 그림이다. 네트워크는 다음처럼 이동된다. 1. 데이터를 수신한다. 2. 데이터를 어느곳에 보낼지 결정한다.(라우터,스위치L3의 역할) 3. 데이터를 보낸다. 참고로 데이터는 0과1로 이뤄져있다. 또한 저선은 연결(링크)라고 부른다고..
URI unified Resource Identifier 리소스를 식별하기 위해 만들어졌다. 보통 URI == URL로 해석된다. 그 이유에 대해 설명할 예정이다. 그전에 다음과 같은 그림을 그려 보자. N과 L은 리소스를 어떻게 식별할 것인지 나타내는 식별자 이다. N : 이름별로 ::= "urn:" ":" 이렇게 작성된다고 한다. 하지만 이 방법으로 리소스를 식별하는게 굉장히 어려워진다. 왜냐하면 urn:"book":"hello" 이것을 해석해 보면 book이라는 이름에서 hello라는 이름을 찾게 된다. 하지만 같은 이름이 여러개라면 어떨까요? 이 방식은 최근에는 사용되지 않는 방식이라고 한다. L: 위치별로 어떻게 보면 이름별로 나누는것과 차이가 없다. 다만 이 방식의 장점은 어떤 프로토콜을 사용..
네트워크는 연결 망이다. 마치 거미줄 처럼 생긴.. 네트워크는 컴퓨터 세상에만 국한된 내용이 절대 아니다. 인적, 자원.. 등등 뭔가 많은데 복잡하면 전부 네트워크라고 생각한다. 하지만 여기에서 말하는 네트워크는 컴퓨터 네트워크를 말한다. 네트워크의 종류 LAN Local Area Network를 뜻하며, 작은 범위의 네트워크를 뜻한다. WAN Wide Area Network를 뜻하며, 넓은 범위의 네트워크를 뜻한다. 그림을 그려보면 이 둘의 역할을 비교할 수 있다. 즉, WAN은 LAN을 연결한다. LAN은 범위가 상대적으로 작다. 그렇기 때문에 가격이 WAN에 비해 적게 든다. 하지만 범위가 넒지 않기 때문에 굳이 겁나게 성능이 좋은 것을 사용할 이유가 없다. 이를 표로 그려보면 다음과 같다. LAN..
이것이 Ip 프로토콜의 한계라고 하는데... 왜 IP 프로토콜은 위 한계를 같게 되는지 생각해보자. 보통 Ip 주소는 (우편) 주소로 비유된다. 즉, 255.255.255.0 라는 곳이 서울시 송파구 XXX로 변환이 가능하다는 이야기다. 또한 Ip주소는 서로 통신하기 위해서는 패킷으로 전송되어진다. 패킷이라는 건 종종 택배로 비유된다. (여기에서는 패킷이 어떤것인지는 자세하게 설명하지는 않을 것이다.) - 택배는 도중에 분실 위험이 존재한다. - 택배는 구매한 물품 순서대로 오지 않는다. - 배달부(택배)는 이사와 관련없다.(이들은 단지 배달일을 했을 뿐...) - 받는곳의 주소가 같은 곳이 여러개다. 더 있겠지만... 위와 비교해보면 이렇게 4문장이 나온다. 그런데 우리는 어째서 위 문제점을 격지 못할..