imhamburger 님의 블로그
도커(Docker) - 네트워크 이해하기 본문
우선 도커를 이해하기 전에 네트워크와 서버를 이해하는 것이 중요하다. 유튜브에 엄청나게 많은 도커에 관한 영상들이 있는데 그것들을 보아도 뭔가 100% 이해가 되지 않았다. 그건 내가 아직 네트워크가 어떻게 돌아가고 서버가 무엇인지 잘 모르기 때문에 그런 것 같다.
그래서 아주 깊이까지는 아니더라도 네트워크와 서버에 대해 먼저 알아보는 시간을 가졌다.
네트워크 그리고 서버. 사실 일상생활에서 많이 들어본 단어지만, 눈으로 보이지 않기 때문에 참 어려운 개념이다.
네트워크의 사전적 의미는 컴퓨터들이 통신 기술을 이용하여 그물망처럼 연결된 통신 이용 형태를 의미한다.
여기에서 컴퓨터는 스마트폰과 아이패드도 포함된다. 컴퓨터로 표현한 이유는 옛날에는 스마트폰과 아이패드와 같은 것이 없었기 때문이다. 하지만 오늘날엔 워낙 컴퓨터의 기능을 하는 다양한 기계들이 발달했기 때문에 포함시켜 생각해야 한다.
그렇다면 '통신 기술을 이용하여'는 무슨 의미일까?
통신 기술에 관하여 깊게 들어가면 정말 어렵다. 이번에는 도커를 이해할 수 있을 정도로만 설명하는 걸로!
옛날에는 서로 다른 두 대의 컴퓨터를 가지고 데이터를 공유하기 위해서는 물리적인 연결이 필요했다. 어떠한 연결선을 내 컴퓨터에 연결하고 '허브'라고 불리었던 네모난 장치에 같이 연결해야 했다. 그림으로 표현하자면 다음과 같다.
예전엔 이러한 물리적인 장치가 있어야 다수의 컴퓨터가 서로 대화가 가능했다. 즉, 통신이 가능했다.
하지만 만약 통신해야할 컴퓨터가 늘어난다면?
그렇게된다면 허브도 여러개가 필요할 것이고 무엇보다 물리적인 연결이 필요하기 때문에 아~주 멀리 떨어져 있는 컴퓨터는 연결이 불가능하다.
그러나! 오늘날엔 이렇게 물리적인 연결을 안해도 무선으로 해외에 있는 사람과 대화가 가능하고 당연한 것이 되었다. 그 이유는 당연히 통신 기술이 발달했기 때문이다. 사실 유선이 무선으로 바뀌었을 뿐이다.
그럼 어떻게 무선으로 통신이 가능한걸까?
한국에 있는 내가 프랑스에 있는 친구에게 우편으로 편지를 보내는 상황을 상상해보자!
편지 안에 내가 친구에게 말하고 싶은 것들을 적은 후 봉투에 넣는다. 봉투에는 내 집주소, 내 연락처 그리고 친구 집주소와 친구 연락처를 적는다. 그리고 우편을 사서 붙이고 한국에 있는 우체국을 통해 보낸다.
컴퓨터들도 무선으로 통신할 때 이와 같은 원리이다. 모든 컴퓨터들은 고유의 주소를 가진다. 이를 IP(Internet Protocol address)라고 한다. (정확한 개념은 네트워크 통신에 있어서 각각의 통신기기에 할당된 식별번호이다.)
그리고 요새는 각 집마다 공유기가 있을텐데 이 공유기가 우체국의 역할을 한다. 내 편지를 멀리있는 친구에게 보내주는 역할이다.
그렇지만 공유기 혼자서는 못한다. 우체국에 여러 집배원이 있듯이 집배원 역할을 하는 라우터라는 것이 있다. 집배원들은 자동차가 될수도, 선박이 될수도 비행기가 될수도 있다. 어떤 방식이든간에 목적지까지 최대한 빨리 도달하기만 하면 장땡이다. 라우터도 공유기로부터 명령을 전달받으면 여러 눈에 보이지 않는 라우터들이 내 편지를 목적지에 도달할 수 있도록 전달 또 전달한다. 이렇게 전달하는 과정을 라우팅이라 부른다.
그럼 나는 공유기와 라우터 덕분에 이제 프랑스에 있는 친구에게 직접 가지않고도 편지를 전달할 수 있게 되었다.
전달하고 싶은 내용을 적고 내 IP주소, MAC주소(이것도 통신을 위해 필요한 주소인데 지금은 존재한다 정도로만 알자!) 그리고 친구 IP주소를 이용하여 편지를 보냈다.
편지가 아니고 상자를 구매하여 택배를 보낸다던지 서류를 보낸다던지 등 내가 보낸 것이 단순 편지인지? 선물인지? 서류인지? 구별할 수 있게 해주는 것, 그것을 포트라고 한다. 우체국은 내가 보낸 IP주소 뒤에 포트 식별번호를 붙여 같이 보낸다. 처음부터 이게 무엇인지 구별해야 비행기로 보낼지 선박으로 보내야되는건지 결정할 수 있기 때문이다.
나중에 다룰거지만, 네트워크 환경을 통해 요청받은 데이터를 보내주는 컴퓨터 시스템을 서버라 부르는데 종류가 다양하다. 서버는 IP주소만으로 요청한 데이터를 어느 서버로 보내줘야 할지 모르기 때문에 포트번호가 반드시 필요하다. 그래야 어느 서버로 보내줘야 할지 알 수 있다. 이건 나중에 더 자세히 다루는걸로!
근데 라우터들은 어떻게 목적지에 정확히 보낼 수 있는거지?
라우터와 라우터간 소통을 할 때 PPP 프레임이라는 것이 있는데, 편지봉투 겉면을 또 PPP 프레임을 감싸 그걸로 소통하여 목적지까지 전달한다. PPP프레임 안에는 식별이 가능한 라우팅 테이블이 있는데 너무 자세하게 다루지는 않겠다.
이 과정을 한마디로 정리한다면, 컴퓨터들이 통신 기술을 이용하여 그물망처럼 연결된 통신 이용 형태 이며
한 단어로 정리한다면, 네트워크이다.
컴퓨터로 예로 들었지만 스마트폰과 아이패드도 결국 마찬가지이다.
'도커(Docker)' 카테고리의 다른 글
도커(Docker) - 같은파일인데 도커 이미지 안에서의 결과랑 내 컴퓨터에서 출력되는 결과가 다르게 나오는 오류 (2) | 2024.09.05 |
---|---|
도커(Docker) - 명령어 모음 (0) | 2024.08.25 |
도커(Docker) - 도커 이해하기 (0) | 2024.07.04 |
도커(Docker) - 가상화 기술과 컨테이너 이해하기 (0) | 2024.07.03 |
도커(Docker) - 서버 이해하기 (0) | 2024.07.02 |