Cellular Wireless Networks
cellular wireless networks는 크게 (1)Wirelss (2)Mobility가 있다.
이 글에서 설명할 내용은 두번째 기능인 Mobility가 어떤식으로 이뤄지는 지에 대해 설명하겠다.
What is mobility?
mobility란 무엇일까?
우리가 길을 걸을면서 통화하고 인터넷을 사용함에 있어, 연결이 끊기지 않고, 계속해서 일을 진행할 수가 있다.
mobility가 이러한 일을 가능케하는 것이다.
Mobility approaches
그렇다면 이런 mobility를 구현하기 위해서는 어떻게 해야할까?
두가지 선택권이 우리에게 주어진다.
- core network의 모든 것을 바꾼다.
- edge단에 맞닿아 있는 것만 바꾼다.
그냥 보기만해도 core한 network를 바꾸는 것은 상당히 비효율적이라고 생각된다. 흠..network를 통으로 바꾸는 것은 일단 엄청난 수의 모바일기기들에 융통적으로 대응하기가 어렵다고 해두자.
그래서, 우리는 edge에 맞닿아 있는 end-system을 조작할 것이다.
여기에도 이렇게 두가지 방식이 있다.
- indirect routing
- direct routing
이쯤되면 이딴걸 왜배우나 회의감이 든다.
이 방법은 우리가 해외로 나가 핸드폰을 사용할 수 있도록 도와준다.
이제부터, 이 방식들이 어떻게 이뤄지게 되는 지 살펴볼 것이다.
먼저,
- home network
- home network내의 HSS(home subscriber server)가 모바일 기기의 정보를 저장하고 있다.
- 간단히 말해서 kt, skt와 같은 서비스 플랜이 이것에 해당된다.
- visited network
- home network가 아닌 것을 말한다고 생각하면 좀 쉬울 것 같은데, 해외에서 쓰는 네트워크라고 일단 생각하자
이 두가지 network를 알아두자.
그리고, 이건 뭐 어떻게 사용되는 건지 잘 모르겠다.. 추후 수정하자
- 4G/5G
- ISP/WiFi
- generic
자 그럼 라우팅과정이 어떻게 이뤄지는지 보자!
1. 먼저 home network의 HSS는 너가 어디에 있는 지 알아야 해 -> 먼저 등록을 해야된다는 말이지
2-1. indirect한 경우,
통신자가 home주소로 데이터를 보내는거야, 그럼 home에 있는 문지기가 데이터를 받고, 해외(visited -)에 있는 문지기한테 데이터를 보내는 거야. 그럼 그 문지기가 라우터라는 매개체를 통해 모바일 기기에다 최종적으로 데이터를 전달하는거야
2-2. direct한 경우,
통신자가 home에 있는 문지기한테 물어보는거야. '모바일 기기가 있는 해외네트워크가 어디니?'라고.
그럼 정보가 생기겠지, 그걸로 통신자가 바로 해외에 있는 문지기한테 데이터를 전달하는거야
2-1의 경우, home에 먼저 데이터를 보내는 과정이 있었기 때문에 indirect라고 부르고, 이러한 과정이 삼각형처럼 생겨서 triangle routing이라고 불러
2-2의 경우, triangle routing이라는 불필요한 과정을 극복하지.
그럼 이 두가지 방법은 어떤 장단점이 있나?
일단 첫번째 경우에는
1. 통신에 대한 투명성이 존재
2. 통신자와 모바일 기기와의 계속되는 연결이 보장됨
두번째 경우에는
1. 삼각 라우팅의 비효율을 개선
2. 통신에 대한 투명성이 존재하지 않음
3. 모바일이 visited network을 바꿀 경우, 다룰 수는 있지만, 추가적인 복잡성이 생김
이라는 것이 있다
Mobility in 4G networks : major mobility tasks
mobility과정이 어떤 순서로 일어나는 지 살펴보자.
- base station association
- control-plane configuration
- data-plane configuration
- mobile handover
순으로 이뤄지는데, 각각의 과정이 어떤식으로 이뤄지는 지 더 자세히 설명하겠다.
1. base station association
가장 먼저 일어나는 단계이다.
우선 모바일 기기가 home network, identifying itself와 같은 정보(IMSI)를 제공해준다.
이때, base station은 라우터는 아니고 '기지국'으로 통신을 도와주는 역할을 한다고 생각하자
2. control-plan configuration
home과 visited network를 연결하는 통로를 만드는 거다.
MME라고 모바일기기의 고유번호를 가지고 있는 곳이 있는데, bs(base station)을 통해 모바일 기기라 소통할 수 있어
그리고 MME가 얻은 IMSI있지? 그걸 통해서 home HSS에 접촉하는거야.
HSS가 뭐라고 했지? mobile의 정보가 있다고 했잖아. 그래서 home HSS는 모바일 기기가 지금 있는 visited network를 알고 있다고 생각하면 돼.
3. data-plane configuration
이제 터널을 뚫어주는 거야.
두 개를 뚫어주는데,
- S-GW to BS tunnel
- 모바일기기가 기지국(BS)을 바꿀때, 간단하게 터너의 endpoint IP주소를 바꿔
- S-GW to home P-SW tunnel
- indirect routing을 할 때 쓰이는 터널
여기서어 GTP라는 터널링 프로토콜로 터널을 만들어주고, 이건 크게보면 UDP 형식이야.
UDP가 뭐냐, 클라이언트와 서버가 할당된 통로로만 통신하는 방식이 아닌거!
4. Mobile handover
Handover이 뭐냐? 담당하는 BS가 바뀌는 경우에 특정 네트워크에서 BS가 변화할 때 이뤄지는 과정이야
그니까 이야기로 풀어서 말하자면,
내가 통화를 하면서 길을 걷고 있어.
내 모바일폰은 1번 기지국이 인지를 하고 통신을 할 수 있는거야.
근데, 1번 기지국에서 내가 점점 멀어지는거지, 그러면서 2번 기지국쪽으로 가고있는거야.
그럼 1번 기지국을 통해서 통화하는 것보다 2번 기지국을 통해서 통화하는 게 더 낫겠지?
그럼 1번 기지국을 손절을 치고, 2번 기지국이랑 연결을 하면 되는거야.
이해가 됐찌?
여기서 '손절을 친고 새로운 연결'가 handover인거지
여기서 용어설명을 하자.
- 1번 기지국 : source BS ; 현재 속해있는 BS
- 2번 기지국 : target BS ; 새로운 BS
- 손절을 치고 새로운 연결. : handover(HR)
그럼 절차 순으로 살펴보자.
1. source BS가 target BS를 선택하고, target BS에게 Handover request msg를 보낸다.
2. target BS가 모바일 기기을 위한 radio time slots을 먼저 할당해 준다.
3. source BS가 모바일에게 새로운 BS (target BS)를 알려준다. (그럼 모바일은 새로운 BS에 메시지를 보낸다.)
4. source BS는 모바일에게 datagram을 보내는걸 멈추고, 새로운 BS에게 보낸다.
5. target BS는 MME에게 '내가 모바일을 위한 새로운 BS'라고 말한다.
-> MME는 S-GW(serving gateway)에게 target BS쪽으로 터널을 바꾸라고 말한다.
6. target BS는 source BS에게 handover가 완료되었다는 ACK를 보내고, source BS는 멈춘다.
7. 이제부터 모바일의 datagram은 target BS에서 S-GW로 가는 새로운 터널로 소통한다.
'네트워크당' 카테고리의 다른 글
[네트워크] 라우터의 구조를 알아보자 (0) | 2023.11.15 |
---|---|
[네트워크] Data plane과 Control plane (0) | 2023.11.07 |
[Information Communications : 정보통신공학] ATM (Asynchronous Transfer Mode) (0) | 2023.05.26 |
[Information Communications : 정보통신공학] Circuit switch VS. Packet switch (0) | 2023.05.25 |
[Information Communications : 정보통신공학] Local Area Network (LAN) - ARP, Topology (0) | 2023.05.24 |