|
- -::: 간만에 Q&A 에 답글을 남기게 되네요.
FTP < Socket? .... 우선 이 둘의 비교가 문제가 됩니다.
네트워킹이나 인터네트워킹을 위해선 윈도우즈에서는 Socket 이란 Pipe 를 통해서 통신할 수 밖에 없습니다.
즉, FTP 도 역시 Socket 을 통해서 만들 수 밖에 없다는 이야기 입니다.
Socket Communication 에 있어서 Unicast 라 부르는 통신 방식에 TCP 와 UDP 가 있습니다.
TCP와 UDP 를 구분하는 큰 차이는 Block 단위 전송에 대한 문제와 연계되어 데이터에 대한 신뢰성을 제공하는가
에 대한 문제를 생각해 볼 수 있습니다.
- -::: 술마시고 글을 쓰니 조금은 두서가 없습니다만...
속도에 차이가 나는건 통신 프로토콜의 구현에 있습니다. FTP 는 아주 오랜 시절 통신속도가 느릴때 구현되었던
프로토콜인데다 그 중점이 안전한(?)전송에 있기 때문에 느리다면 느릴 수 밖에 없습니다.
하지만 요즘은 소켓을 통해 자체적으로 여러 프로토콜(?)을 개발해서 사용할 수 있기 때문에
파일 전송을 예를 들면 흔히 이야기하는 P2P 처럼 다수개의 Socket 을 통해 또한 TCP & UDP 를
복합적으로 사용해서 전송을 효율적으로 할 수 있기 때문에 최신의 메신저들이 보이는
퍼포먼스가 가능한 것입니다.
ps. Broadcast 라는 건...;;;; 조금 특수한 포트 redirection 이라 볼 수 있겠습니다. 따라서
예전에... 인터넷 방송을 Broadcast 로 했다는 말은 조금 - -::: 의미 전달이 이상(?)하거나
잘못되었을 수 있습니다.
공동현 님이 쓰신 글 :
: Socket으로 업데이트 프로그램을 만들었습니다.
: 그런데, FTP보다 속도가 엄청나게 차이가 나네요?
: 어차피 FTP도 소켓을 이용한건데....-.-;;
: 그렇다고 해서 프로토콜이 많은것도 아니고, 서버나 클라이언트의 메모리 사용도 파일 전송에 관련된것만 쓰기 때문에 더욱 이해가 안가더군요.
:
: 그럼, 만약에 Socket으로 FTP프로그램을 만든다면 cute ftp같은 상용 프로그램에 비하면 엄청나게 떨어질텐데....FTP 프로그램들은 자체적으로 Socket을 이용하고 파일전송을 하는 프로토콜만을 패킷에 넣었을텐데
: 고수님들의 조언 부탁드립니다.
: 참고로, 메신저중엔 icq와 드림위즈의 지니가 무척 빠르더군요.
: ?.? ;;
:
: --- Change World ---
:
|