대화창인데
대화 신청한사람이 대화창에 TCP IP로 새로이 서버를 돌리는거야
그러면서 상대방쪽에는 그 서버에 접속하는 셈 치고 대화창이 생성되지
일단 내가 localhost인데 코드 구조상 그냥 포트를 바인드하거든?
거기다 서버에서 클라이언트에서 주는 포트를 딱 지정해논단말야
즉 서버에서 6000번으로 클라이언트 포트를 정해버리고
클라이언트 1에서 6000번으로 접속
클라이언트 2에서 6001번으로 접속 한다 이거지
그러면 클라이언트 2는 데이터를 못받고(왜냐면 서버에서 6001로 받겠단 설정이 안되있으니깐), 클라이언트 1만 내용을 받을 수 있어야하겠지?
그래서 클라이언트 2에서 데이터를 보내 즉 채팅창 입력하는거지..
대화창까지는 생성이 잘되는데 내용이 안읽혀
클라이언트2에서 대화내용을 입력하고 해당서버에 oos로 writeObject 해주면 이런 경우의 클라이언트 1은 그 소켓의 ois (object input stream)으로 못받나?
소켓으로
outputstream까지는 되는데 inputstream이 안읽혀
도와줘잉 ㅜㅜ
TCP IP 에서 이 경우에는 getInputStream이 안먹히는게맞냐
니 코 가 뭐(doorags)
2012-06-06 01:50
추천 0
댓글 23
다른 게시글
-
충격 받음 다국어 번역기 만들어서 1.5에 팔길래 [5]ㅇ(114.200) | 12.06.06추천 0
-
형들 내일 쉬는날이야! [4]JSun(zzgobuxgo) | 12.06.06추천 0
-
안드로이드 어플만들어주실분있나요 [5]autoexebat(ddingddong88) | 12.06.06추천 0
-
아싸횽 아니면 플밍 학원차리자 [6]생물학(211.234) | 12.06.06추천 0
-
적절한 코딩 시간... [1]아놔콘다(anwaconda) | 12.06.06추천 0
-
c로 이미지다운받기 완성했당 [8]ㄴㄴ(182.218) | 12.06.06추천 0
-
아니 레노미아있냐 메신저 어드레스 바인드 오류_-- [5]니 코 가..(doorags) | 12.06.05추천 0
-
바보아싸에게 추천해줄 만한 책. [1]귀농지원(183.98) | 12.06.05추천 0
-
아싸횽 앱보다는 교육용 컴퓨터 게임 차단 어떠므? [5]생물학(211.234) | 12.06.05추천 0
-
으앙 어떻게 짜야 할지 모르겠어 [1]ㄹㅇㄴㅁ(14.51) | 12.06.05추천 0
솔직히 뭔말인지 모르겠는데, 서버에서 클라이언트에서 주는 포트를 지정한다는게 무슨 말이야?
그니깐 써버에서 클라이언트랑 UDP에서는 소켓 통신하자나? 근데 그 소켓이 받아들이는 Client의 포트번호를 걍 지정해버리는거임.. 그래서 해당 포트와 맞는 클라이언트 에만 서버에서 보내줄수있어 클라이언트 1이 보내는 내용을 서버에서 지정한 포트와 같은 포트를 가진 클라이언트 2에서만 확인할수있다는거임
그니까 서버가 sender의 포트를 확인해서 지정된 포트가 아니면 버린다는 얘기야?
앙 그렇지.. 버린다기보다는 서버가 끝나버려..
그니깐 크게 이게 대화 소켓이다 ! 라고 보내주는걸 받는건 서버고 대화창 클래스는 그 내용을 그대로 받아서 분석하는건데
InputStream이 안읽혀..
뭔말인지 이해를 못하겠다. 밑에 보니까 메신져 만드는거 같은데 구조가 좀 이상하지 않음?
서버가 왜 클라이언트의 포트에 관심을 가지지?
뭔소리여
A, B, C로 짧게라도 쓰셈
그리고 Stream 으로 읽는거보면 TCP 쓰고 있는건데 뭔가 전반적으로 그냥 말이 안되는 느낌인데?
그럴리가 예시 소스 책에서 따온건데...
그니깐 Server에서는 지정된 Port로만의 통신이 가능하다.
그리고 client는 기본으로 포트가 원래 지정되어있다. 그래서 아이피 종류 다양한 Client는 한 포트로 접속을 하고 아이피가 다르기떄문에 바인드 오류는 생기지않는다. 그러나 나는 지금 한 아이피로 서버에 접속을 몇개씩 해야한다.. 그래서 포트로 구별을 줄려하고
포트번호를 다르게 해서 접속을 한다. 다만 그 포트 중에는 서버에 맞는 포트가 하나 존재한다.
결국 맞는 포트 는 서버를 통해서 객체를 받을 수 도 있고(타겟이되니까) 쓸수도있다 그러나 포트가 맞지 않으면 서버에 보낼수나 있지 받을 순 없다 .
결국 그런식으로 친구가 접속된 상태에서 대화를 걸면 대화를 건 쪽에서 TCP IP로 서버를 하나 더 만들고 채팅창은 그에 맞는 채팅 쓰레드가 돌아간다.
접속하는 넘은 포트 알아서 배정,,
결국 포트가 다른놈이 포트 맞는놈한텐 데이터를 보낼 수 있고 오류가 안생기는데 포트 맞는놈은 정작 InputStream으로 이 데이터를 받아들이지 못한다
A->B & C->B이니까 A->C가 되어있다고 생각하는 거임?
TCP / UDP 둘중에 뭐야?
TCP면 일단 connection established 되는 순간 듀플렉스로 양방향 통신 무조건 되야되는거니까 말이 안되고
UDP면. UDP를 왜 Stream으로 읽지?