본문 바로가기

(TCP) TIME_WAIT과 CLOSE_WAIT의 차이 TCP는 복잡한 과정을 통해서 연결을 종료하는데(4 way handshaking) TIME_WAIT과 CLOSE_WAIT의 차이만 구분한다면 나머지 과정은 쉽게 이해할 수 있다!(FIN_WAIT_1, FIN_WAIT_2, LAST_ACK 등은 조연이라고 생각하면 된다!) 단순하게 말해서 TIME_WAIT은 클라이언트에서 연결이 종료되었다는 말이고 CLOSE_WAIT은 서버에서 연결이 종료되었다는 말이다! TIME_WAIT(클라이언트)은 특정 시간이 지나면 자동으로 CLOSED 상태로 전환되며 CLOSE_WAIT(서버)은 LAST_ACK 등의 과정을 거치고 CLOSED 상태로 바뀐다! 그냥 클라이언트와 서버의 차이만 기억해도 4 way handshaking의 이해에 큰 중심을 가질 수 있을 것이다! 더보기
corba와 rmi는 http 기반으로 급속히 대체되고 있다. corba와 rmi 등의 고전적인(?) 기술은 최근에 http 기반으로 급속히 대체되고 있다! 지금은 xml-rpc, rest 등의 용어가 더욱 친숙하게 들리는 시대라고 할 수 있다! 가장 큰 이유는 무겁다는 부분일테다!(ejb가 스프링으로 대체가 되고 있듯이!) corba와 rmi는 여전히 그 영향력은 잔존하겠지만(ejb 또한 아직까지는 건재하므로) 머지 않은 미래에 레거시 기술에 속하게 될 것이다. 더보기
단순 LDAP이 아니라 굳이 레디우스(Radius)를 사용하는 이유 레디우스(Radius)는 인증(Authentication) 및 권한 관리(Authorization) 등을 처리해주는 표준 프로토콜이다.(실무에서 대단히 많이 사용된다!) 그런데 '그냥 LDAP 바인딩을 해서 인증 처리를 해도 되는데 그리고 Acitive Directory로도 Authorization까지 충분히 처리할 수 있는데 왜 굳이 복잡하게 레디우스을 써야만 하는가?' 의문이 들 수도 있을 것이다! 충분히 맞는 말이다! 사실 LDAP으로 처리해도 아무런 상관이 없다. 하지만 Radius를 이용하면 Authentication과 Authorization을 좀 더 나이스한 방향으로 처리할 수 있기 때문에 많은 공수(?)를 들여서 사용하는 것이다! 단적인 예를 들자면 LDAP 인증을 하려면 기본적으로 바인딩.. 더보기