해외인터넷 최상의 핑 (RTT) (4) – VPN 으로 핑 줄여보기

VPN 을 통해 국제핑을 줄여보자

이전 포스트에선 VPN 이라는 좋은 걸 알았다. 이번엔 VPN 을 사용하여, 어떻게 핑이 줄게 되는지 실험을 해보겠다. VPN 은 무료로 이용할 수 있는 VPN Gate를 이용한다.

VPN Gate + SoftEther VPN 를 통한 실제 핑 실험

사례 1 – 홍콩서버

실험을 위해 어느 홍콩 서버의 아이피를 가져왔다. (실제 어떤 서버인진 모른다.)

traceroute from korea to hong kong홍콩의 아이피 인데 112.174.83.182 (KT) -> Tokyo (tok02) PCCW -> Tokyo (tok01) SoftLayer -> Hong kong (hkg01) SoftLayer -> 216. 홍콩서버 이런식으로 홍콩으로 가는데 일본을 거쳐서 통행을 한다.

핑은 87ms 이다.

우리나라 국제 트래픽의 90% 는 일본을 거치게 된다고 한다. 지리적인 이유가 가장 커보인다.
북쪽과 서쪽은 체제유지에 열광하는 공산주의, 남쪽으로는 멀리 펼쳐지는 빈 공터, 이런 이유로
많은 트래픽을 일본에 우선 연결한 것으로 보인다.

홍콩으로 바로 접속하면 빠를까?

VPNGate SoftEther VPN

아쉽게도 VPNGate에 Hong Kong 서버가 없었다. 있더라도 나는 KT를 이용하기에 KT가 위의 결과 처럼 홍콩으로 바로 보내준다는 보장도 없다.

나의 예전 경험에 의하면 국내에서 홍콩으로 바로 보내는 통신사는 LG DACOM (구 Xpeed) 이었던걸로 기억한다. 물론 VPN Gate 에 LG 유플러스 인터넷 서버가 없었다. (왜 죄다 SK랑 LG야… ㅠㅠ)

노다지

서버리스트에 우리나라 국내 모 대학교 서버가 있었다.

연결 후

softether vpngate ping87ms 의 핑이 50ms 로 줄었다. 37ms, 항상 도쿄로 보냈던 KT 홍콩 연결을, 국내 모 대학교SNU 네트워크에 연결해 직접 홍콩으로 접속해 절반에 가까운 핑을 절약하였다.

vpngate tracert blocked

방화벽에 의해 경로추적은 차단되었지만, 다른 방법으로 알아낸 값으로,
모 대학 네트워크SNU는 홍콩 (HKIX) 에서 LG DACOM 또는 KISTI 라는 기관으로 연결되는 듯 하다.

사례 2 – 블라디보스토크

이번엔 블라디보스토크의 어느 서버 아이피를 가져왔다.

VLADIVOSTOK PING???

VLADIVOSTOK

홍콩보다 가까워 보이는데 290ms 라니!?

그렇다.

우리 케이블은 러시아와 연결되어 있지않다. 아마 러시아의 동쪽은 지방이라 불리는 도시들만 가득해서 그럴 것이다. 우리나라와 연결한들 상업적으로 득이 될게 없다.

경로추적결과

이번 경로는 유추하기가 어렵다만,
KT > PCCW 일본 > PCCW 홍콩 > PCCW 베이징 > ? > Rostelecom 러시아 하바로프스크 > 블라디보스토크 순으로 연결되는 것 같다. ISP 에도 보안이 있으므로 정확한 정보가 안나오는건 당연하다.

일본을 경유해 갈 순 없을까?

위 해저케이블 사이트에 블라디보스토크 쪽 (정확히 Nakhodka)에 일본의 Naoetsu 라는 지역에 연결 된 선이 있다고 한다.
소유주는 Rostelecom (러시아) 과 KDDI (일본).
그럼 간단하다. 일본 KDDI 를 사용하는 VPN 에 연결해 보면 될 것 같다.

VPNGate KDDIdion은 KDDI 의 옛날 이름인듯 하다

연결 후 핑 테스트

97ms 의 결과를 가졌다. VPN을 통한 경로우회를 통해 290ms 에서 약 200ms 를 줄일 수 있었다.

 

해외인터넷 최상의 핑 (RTT) (3) – 핑을 줄이는 방법

해외인터넷의 핑을 최대한 줄여보자

이전 포스트엔 핑에 대해서 알아보았다. 그럼 핑이 늘어나는 요인부터 어떻게 줄여볼 수 있을지 서술해보겠다.

핑이 늘어나는 요인

핑이 늘어나는 요인은 여러가지가 있다.

  1. 물리적 연결 거리가 늘어나는 경우
  2. 패킷을 처리해 줄 각 네트워크 기기들의 처리시간이 그렇게 빠르지 않는경우, 혹은 패킷을 처리하는 네트워크 기기 사이에 패킷을 검열하는 보안장비 (방화벽)가 있는 경우
  3. 보내는 패킷의 양이 많은 경우
  4. 통신 선의 트래픽 부하량이 많은 경우 : 만약 이 경우가 발생하면 QoS 라는 기술을 사용해서 모든 트래픽이 원할하게 처리가 되어야한다.
  5. 송신자 및 수신자 컴퓨터의 처리가 느린경우
  6. 네트워크 장비가 손상된 경우

어떻게 핑을 줄여야 할까?

핑을 줄이는 방법 중, 개인 이용자의 우리는 ISP 에서 제공하는 대로 사용할 수 밖에 없다. 우리가 라우팅라우터 간의 경로를 선택하는 행위를 말한다.을 바꿔달라니 어떻니는 비즈니스 레벨이기에 그냥 주는대로 써야한다.

ISP 에서 제공하는 인터넷은 역시나 핑을 줄일 수도 없고, 어떤 것도 하지 못한다. 간혹 아파트나, 주거단지 내 회선 부하가 심해서 로컬 단위부터 심한 핑폭 을 느낄 수 있기도 하다. 특히 케이블방송에서 제공하는 인터넷이 이 현상이 많은 듯 하다.

인터넷 통신사에 대해

우리나라에 태평양 국제 케이블을 이용할 수 있는 권한을 가진 ISP는 KT, LG, SKT, KINX 뿐 밖에 없다시피하다. 그럼 위 통신사 말고 다른 회사는 해외와의 통신을 어떻게 하냐? 라면, 국제 케이블에 타사의 고객들도 같이 동승시켜 주는 것이다. 규모가 작은 통신 회사는 아무래도 국제케이블 설비, 참여 같은 일은 조금 무리일 것이다. 이것은 아무래도 국제트래픽 이용량의 제약이 있을 것이다. 주인은 다른 사람이니까. 심지어 인터넷을 차별화하는 망 중립성과도 조금 연관된다.

 

방법이 존재하나?

해답은 가상 사설 네트워크 (VPN, Virtual Personal Network) 이다. VPN은 말 그대로 가상의 사설망을 구현해주는 것으로. 회사의 인트라넷에 연결하는 목적으로도 쓰고, VPN은 라우터가 패킷을 대신 전달해주는 역할도 한다. VPN은 VPN서버와 클라이언트간 패킷 암호화 된 통신도 가능해 보안 목적으로도 쓰인다.

VPN 으로 어떻게 하나?

VPN은 패킷을 대신 전달해준다. 상용 VPN 서버는 우리가 가려는 목적지 (서버) 까지 굉장히 최적의 경로를 제공해 줄 수도 있고, 아닐 수도 있다. ????
각 인터넷 업체마다, IP 주소 마다 가지는 경로는 모두 다르기 때문이다.
최적의 경로로 탑승하는지는 직접 확인해 비교해 볼 수 밖에없다.
그런데,  IP 주소 마다 가지는 경로는 모두 다르다고 했다. 이게 무슨 말이냐면, 원할하고 빠른 경로를 가지는 VPN 서버도 있다는 뜻이다.
이 서버들에게 패킷을 대신 전해달라고 하면, 핑이 높은 구간을 피할 수 있다는 것이다.

VPN 종류 및 어디서?

VPN을 제공하는 업체도 많고, 종류도 다양하다. 대표적으로 PPTP, L2TP, OpenVPN 등 여러가지가 있는데.
앞의 PPTP, L2TP 는 조금 까다롭기 때문에흔한 소프트웨어 방식과는 거리가 멀기 때문이다. 오픈 소스 소프트웨어로 제작된 OpenVPN 을 기반으로 주로 이용한다. 각 회사별로 자체 제작한 VPN 프로그램도 있다.

VPN을 제공하는 유명한 업체들
  • 미꾸라지 VPN (한국)
  • ExpressVPN
  • NordVPN

등이 있다. 아니 무수히 많이 있다.

무료로 VPN 을 제공해주는 곳도 있다

Public VPN 이라고 불리는데, 주로 개인이나 비영리 단체에서 자유로운 인터넷 기여를 위해, 서버의 자원을 대여해주는것으로. VPN Gate 등이 있다.

서버를 임대해 개인 VPN 서버를 구축

하는 방법도 있다. 직접 관리해야하고, 서버 구축이 힘들지만, IP 주소를 독점하여 사용할 수 있고 가격도 일정사용량이 넘는다면 VPN 업체보다 저렴하다는 것이 장점이다.

 

해외인터넷 최상의 핑 (RTT) (2) – 핑을 알아보자

핑이란

RTT 는 왕복 시간 Round Trip Time 의 약자로서, RTT를 확인하는 명령어로 ping 이기에 주로 핑 이라는 말로도 부른다.
이 왕복 시간이란 것은 클라이언트, 서버 둘 중 한 쪽이 요청을 했을때, 요청한 시점 으로부터 응답을 주는 쪽의 응답을 받을 때 까지의 시간을 말한다.

이전 포스트에서 인터넷과 해외인터넷, 그리고 핑에 대한 간략적인 내용을 서술해보았다.
이번 포스트에서는 해외인터넷을 이용할 때, 특이점들이나 내가 쌓아온 간단한 팁을 포함해
핑을 확인하는 방법까지 차근차근 설명해 나아가보겠다.

 

본격적으로 핑을 알아보자

핑은 보통 어느 서버의 주소IPv4 주소라고 불린다를 알아야 확인할 수 있다. 서울에서 부산역 까지 갈때에도 정확한 주소가 있는 것 처럼, 인터넷에도 각 컴퓨터에 IPv4 주소를 부여한다.
불가능하다면 게임등의 경우 게임 내에 RTT 값 표시를 제공하는 게임이 있을 수 도있다.

Windows Resource Monitor

윈도우즈 리소스모니터에도 TCP 한정, 핑 값을 확인할 수 있다. (가장 우측 숫자값 (ms)이 RTT)

 

실제 게임서버에서 이용

유명한 FPS 게임 CSGO 에서 핑 확인을 해보았다.

 

csgo tokyo

IP 주소의 경우 공개하는 경우 공격에 노출될 수 있어, 집 주소 올리는 것과 같이 함부로 게시하지 않는 것이 좋다.

게임 내에서는 38 라는 핑을 보이고 있다. 실제로 이 아이피주소에 핑을 확인해보도록 하자.

Primary router: tyo#36 이라고 되어있는데, 여기서 tyo는 도쿄를 뜻한다.

  • [윈도우 로고 키] + R 실행
  • cmd 입력 후 엔터. – 명령 프롬포트가 열린다.

명령 프롬포트에서

를 입력 후 엔터를 누르면 결과가 나온다.

ping

해당 아이피에 39ms 의 핑 지연시간을 확인하였다.

대부분 서버는 방화벽에서 보안의 이유로 핑을 차단해서 이 방법으로 확인이 불가능한 경우가 많습니다.

또한 당신의 네트워크에서 이 행위를 막았을지도 모릅니다! (공용 네트워크의 경우)

어느 라우터를 통해 연결되는지 경로를 확인하는 방법도 있다

traceroute 라고 윈도우에서는

라는 명령으로 패킷

네트워크 상에서 전송할 데이터와 이것저것 정보를 담은 꾸러미, 또는 네트워크 상으로 보내는 데이터 그 자체를 뜻한다
이 전달되는 경로와 각각 라우터의 응답 시간을 알아낼 수 있다.

이 또한 모종의 이유로 표시되지 않는 경우가 많다.

경로추적 일본경로추적을 해보았다. 여기서 재미있게 확인할 수 있는것은 핑이 30ms 이상이나 점프하는 곳이 있다.
이 지점은 나는 해저케이블 간 연결 이라고 확신할 수 있다.

나는 지방에 살아서 그런지, 이곳 저곳에서 직접 확인해보아서 알게 된 점이 있다면. 지방에서의 트래픽은 모두 서울로 올라가는걸로 보인다. (해저케이블 센터가 있는 거제-부산지역은 잘 모르겠다)

해외인터넷 최상의 핑 (RTT) (1) – 해외인터넷

해외 인터넷

나는 네트워크 전공자도 실무자도 아니지만, 여러 지역, 서버 및 인터넷, 경험등을 통하여 얻은 것이 있다. 우리는 국내 뿐만 아니라 해외와의 통신, 교류를 한다. 안하면 상관없지만, 특히 자료를 찾을 때에 국내에 자료가 있다면 모르지만, 해외까지 찾아봐야 하는 경우는 어떨까? 멀티플레이어 온라인 게임을 하는데 국내에 서버가 없는 해외서비스의 경우는 또 어떨까? 컨텐츠 제공자가 국내에 피치 못할 사정으로 해외에 서비스를 한 상태로 이용하는 경우등도 있고, 해외에 무역을 한다던지, 해외로 간 친구와 통신을 한다던지. 무수히 많게 해외서버와의 통신하는 일이 알게 모르게 많을 수 있다.

우리는 개인 콘텐츠 이용자 입장으로, 이에 별로 신경쓰지 않으면 이 포스트를 읽을 이유가 없지만 만약 이 포스트를 읽은 사람이라면ㅋㅋ 쾌적하게, 좀 더 빠르게 이용하고 싶어서 일 것이다.

지금부터 검증되지 않았고, 거짓정보일 수도 있고, 잘못 된 정보일 수도 있는 오로지 내 경험, 지식등에 의한 의견을 서술해보겠다. 의견에 대해 비판하는것도 나쁘지 않다, 검증되지 않고 누군가가 또 잘못된 정보를 알아갈 수 있기 때문이다.

인터넷을 어떻게?

국내에서 개인단위로 인터넷을 이용하려면 우선 인터넷서비스제공자(ISP)일명 통신사 에서 인터넷을 제공받아 이용한다. 우리인터넷은 해외와도 연결되어있어 통신사는 이용자가 해외서버와에 연결을 수립하고자 하면 제공을 해주는게 당연하다. 해외인터넷 이용을 괴씸하다고 정부 단위로 차단하는 경우도 있다. 1 자원은 한정되어있고, 시장경제 체제라서 누구나 좋은 인터넷을 이용하긴 힘든 현실이다. 돈이 안되니까.
그래서 돈 많은 인터넷사업자를 보면 규모도 크지만, 사용자 이용료도 크다.
반대로 돈이 적은 인터넷 사업자것을 쓰면 그에 비해 인터넷 단가가 싸지만 품질이 형편없는 경우가 많다.
우선 이 포스트는 최상의 해외통신을 위한 포스트기 때문에, 어떤 인터넷을 이용해야 가장 좋은지 알아보도록 하자.

인터넷 속도

인터넷은 대역폭이라고 불리는 요즘엔 주로 Mbps초당 메가비트 수 = 1Mbit = 1000000bit의 속도의 단위 (최근들어서는 기가비트1Gbit = 1000Mbit로 넘어가는 경향이 있다. 초규모 사업자들은 Tbps1000Gbps=1Tbps 로 자사의 네트워크 규모를 광고하기도 한다) 를 쓰며, 바로 해외인터넷으로 화제를 전환해보면 해외인터넷은 우리나라는 3면이 바다고, 한 면은 육지지만 어떤 이유로 사실상 고립되어, 해외와 연결할 수있는 수단은 바다 뿐이다. 그래서 바다에 광섬유 통신케이블을 설치해서 지금까지 쭉 계속 써왔다.

우리나라에 이 태평양 바다속에 넣는 국제 해저케이블 사용권한을 가지는 ISP에 각 통신사 별로 사용가능한 해저케이블 대역폭 순서는 KT, LG, SK 순으로 KT 가 가장 많다. 이 수치는 타 통신사와 비교하면 압도적이다.

해저케이블

우리나라 주변의 국제해저케이블들. 출처 : https://www.submarinecablemap.com/

광섬유케이블

광섬유 케이블optical fiber은 빛을 매개체로 연결한다. 그러면 빛으로 통신을 할거아닌가? 빛은 1초에 약 300,000km 을 간다고 어디선가 배웠다. 그런데, 이게 빠르냐? 하면 아닌것이, 요즘 컴퓨터는 나노초단위까지도 연산이 가능하다. 최신 표준 컴퓨터 클럭인 3GHz는 1초에 30억번을 뜻하는게 아니겠는가? 사실 이것까지의 정확한 답은 몰라서 할 순 없지만, 아무튼 1초에 300,000km 이면 0.001초엔 고작 300km 이 나온다. 그러나 빛이 무조건 끝에서 끝으로 전달된다는 보장도 없고, 빛에 데이터를 넣으면 손실없이 완벽히 전달된다는 보장도 없다. 빛은 유리에 반사된다는 성질을 이용해서 멀리 보낸다고 한다만, 그래도 멀리 보내는데 빛이 손실 될 수도 있어서 중간중간 증폭할 수 있는 장치도 필요한다. 이런 저런 이유로 광케이블은 대략 1ms0.001초에 100km 이라고 쳐두면 편하겠다.

정확한 근거는 없지만 사람의 신경반응은 최대 7ms 이내의 응답을 가지는 것 같다.

인터넷 제공자간 데이터 처리

해저 광케이블을 누구랑 누구랑 연결하는가? 주체가 모두 다 같으면 좋겠지만, 실제로 그렇지 않다. A 와 B 지점이 있어, 서로 연결하는데 A 지역 내의 통신사업자와 B 지역 내의 통신사업자와 또 서로 연결해야 통신이 가능할 것 아닌가? 이런 서로 통신을 가능하게 해주는 장치를 라우터 라고 부른다.

라우터는 복잡하지만 쉽게 말하면 인터넷의 데이터가 어디로 가야할지 판단하고 보내는 장치이다.
이 장치는 “A 게임서버에 접속한다”, “네이버에 접속한다” 등의 사용자의 데이터패킷를 읽어 다른 라우터예:부산지점의 메인라우터, 또는 미국 A 통신회사의 라우터로 데이터를 보낸다.

데이터는 어느어느서버가 자신에게 직접 연결되어있음을 알고 있는 라우터는, 최종적으로 서버에게 데이터를 보내게 되겠지. 이로서 데이터가 전달되게된다.

이게 핑 (RTT)과 뭔 상관?

그러나 이 과정에서 라우터는 수십~수천만 또는 수 십억 이용자의 데이터를 분석하고, 어느 길로 갈지 정해줘야 되는데, 이 과정에서 컴퓨터 처리가 늦는다거나. 서로 연결 된 통신회선에 트래픽이 많아 지연되거나 하는 등의 경우 패킷지연시간 (핑, RTT)은 당연히 더욱 느려질 수 밖에 없다.

 

잠깐, 핑 (RTT) 가 뭐지?

RTT 는 왕복 시간 Round Trip Time 의 약자로서, RTT를 확인하는 명령어로 ping 이기에 주로 핑 이라는 말로도 부른다.
이 왕복 시간이란 것은 클라이언트, 서버 둘 중 한 쪽이 요청을 했을때, 요청한 시점 으로부터 응답을 주는 쪽의 응답을 받을 때 까지의 시간을 말한다.