전자기파를 쓰는 무선 와이파이의 경우, 주파수가 겹치면 충돌이 나기 때문에,
서로 다른 주파수를 쓰려고 처음 설정할 때 자동으로 찾는다고 한다.
만약 한 기관 내에서 여러 AP를 사용할 경우, 서로 다른 주파수를 사용하면,
영역이 겹치더라도 충돌이 일어나지 않을 것이다.
collision domain이 분리되어 있는 것이다.
만약 오버랩된다면, 서로 다른 기관이 모르고 겹치게 주파수를 쓴다면?
=> CSMA/CA + RTS + CTS로 해결하는 것이다.
이러면 AP2를 쓰는 H2가 프레임을 보낼 때, AP1에 있는 모든 애들이 입다물고 있어야 한다.
4개중 중요한 것은 3개라고 했고, 그 중 SRC,DST는 너무 당연한 것이라고 했다.
그런데 문제는 AP랑 연결된 Router의 MAC 주소를 Host가 적어줘야 한다는 것이다.
이 그림을 다시 보자.
AP는 무선과 유선을 넘나들어야 한다.
와이파이 프레임과 이더넷 프레임을 둘 다 알아야하고, 알맞게 고쳐줘야 한다.
라우터 입장에서는 AP는 스위치일 뿐이다. 라우터는 그저 이 유선 케이블을 따라가면 H1이 있는 줄 아는 것이다. 무선인 것도 모른다.
두 개의 필드만 필요하다고 가정을 해보자.
이러면 H1에서 AP까진 잘 간다.
그 다음? AP는 Link layer 디바이스라고 했다.
Network Layer에서 하는 IP 해석을 못한다.
물론 AP와 라우터가 유선으로 연결되어 있기 때문에, 라우터의 MAC 주소를 보지 않고 그냥 데이터를 흘려 보내면 라우터까지 가긴 한다.
근데 Host <---> AP는 와이파이 프레임인 것이고,
AP <---> Router는 이더넷 프레임이다.
Src : H1, Dst : ???
AP 입장에서 Router의 MAC 주소를 모른다. H1이 안 줬으니까.
MAC 주소를 알아내는 방법은 ? ARP. IP --- MAC 테이블 만드는거.
어 IP? 그건 Network Layer잖아, AP는 Link Layer까지만 구현되어 있어서 몰라.
의식의 흐름이 이해 가는가?
AP가 이 프레임을 받겠냐? 못 받지.
아 그래서 3개 다 필요하구나~
이제 ARP로 GWR IP를 MAC 주소로 바꿀 거임
8. ARP Request를 보내는데, 마찬가지로 아직 라우터의 MAC은 모르니 위 처럼 브로드캐스팅하고, Frame의 메시지 안에 'gwr ip 주소한테 mac주소 알려주셈'
이라고 보낸다.
9. 라우터가 보내고, 나는 IP, MAC 다 아니까 나한테만 온다.
10. 내 ARP 테이블 업데이트 한다. (GWR MAC 획득)
이제는 하나의 메시지 안에 메시지 안에 메시지 안에....
모든 걸 고려할 수 있어야 한다. ㅈㄴ 어렵다. 마치 메트로시카 인형
작은 단위로 보자.
NAT : 여러 디바이스 마다 IP 할당해줌
AP : 와이파이 무선 통신을 받아서 유선 모뎀으로 바꿔서 보냄
Local DNS : 내부 DNS 서버 기능으로 도메인을 IP 주소로 변환
Router : 내부 인터넷과 외부 인터넷간에 Gateway router 역할 해줌
대단한 녀석이다. 이게 단 돈 몇만원?
type과 duration 정도 다시 한번 보고 넘어가자.
연결이란게 뭐냐? TCP Connection이다.
누구랑 누구간에 커넥션이냐? 내 소켓과 유튜브 서버의 소켓 사이의 연결이다.
TCP는 어떻게 연결을 유지하냐?
TCP는 IP, PORT만 같으면 유지한다. 이게 변하면 끊어진다.
내가 이동을 한다. Port야 뭐 내가 컴퓨터 안 만지면 상관없고,
IP가 움직이면 끝이다.
나는 A 강의실에서 B강의실로 이동한다. AP는 바뀔 수 있다.
근데 IP는 누가할당하냐? Gateway router. 이 학교를 벗어나지 않는 한 연결이 끊기지는 않는다.
그런데
위 그림을 다시보자.
AP1에서 AP2로 이동했다. 그럼 유튜브가 나한테 메시지를 보낼 때, 오른쪽으로 보내줘야 할 거 아닌가? 이거 어캐함?
AP 위에 스위치를 보자. 스위치는 뭘 보고 방향을 정하는가? "스위치 테이블"
이거 어떻게 채웠지 ? 셀프 러닝
메시지를 보내는 쪽에서 프레임 보낼 때 '이 포트에서 왔구나' 하고 적지 않는가.
즉 처음에는 유튜브가 보낸 메시지를 똑같이 왼쪽으로 보내겠지만,
내가 메시지를 보내려고 하면 스위치는 '어 얘 바뀌엇네' 하고 바꿔주는 것이다.
매번 살펴봐야 한다. 니 말처럼 동적인 네트워크 환경이기 때문이다.