java 네트워크

개미Coder
|2024. 5. 10. 12:14
반응형

# 네트워크

- 여러 대의 컴퓨터를 통신 회선으로 연결한 것

- 홈 네트워크 : 컴퓨터가 방마다 있고, 이들 컴퓨터를 유-무선 등의 통신 회선으로 연결

 

- 지역 네트워크 : 회사, 건물, 특정 영역에 존재하는 컴퓨터를 통신 회선으로 연결한 것

 

- 인터넷 : 지역 네트워크를 통신 회선으로 연결한 것

 

# 서버와 클라이언트

- 서버 : 서비스를 제공하는 프로그램

- 웹 서버, FTP서버, DBMS, 메신저 서버

- 클라이언트의 연결을 수락하고, 요청 내용 처리한 후 응답 보내는 역할

 

- 클라이언트 : 서비스를 받는 프로그램

웹 브라우저, FTP 클라이언트, 메신저

네트워크 데이터를 필요로 하는 모든 애플리케이션이 해당(모바일 앱 포함)

 

 

# IP 주소와 포트(port)

- IP(Internet Protocol) 주소

- 네트워크상에서 컴퓨터를 식별하는 번호

- 네트워크 어댑터(랜 (Lan) 카드) 마다 할당

- IP 주소 확인 법 - 명령 프롬포트 (cmd.exe.) 사용

 

# port를 통해서 네트워크 서버에 접속할 수 있다.

- 포트는 기본적으로 클라이언트와 컴퓨터와의 데이터를 연결해주는 식별 번호이다.

 

 

# TCP

- 신뢰성이 있다. (서버에 정확히 연결이 될 때 까지 통신이 유지된다)

- 데이터 패킷 자체가 들어오면 3번 확인을 한다. (전송 속도가 늦어짐)

- 연결요청, 연결수락, 통신

 

# UDP

- 비연결 지향적 프로토콜

- 연결 절차가 있지 않고 일방적으로 데이터를 발신하는 방식이다.

- 일부 패킷은 잘못된 선로로 전송되어 유실 가능

- 데이터 전달 신뢰성이 떨어진다.

 

MulriCast는 회사 같은 단체의 인프라넷으로만 사용하지, 공개적으로 사용하지는 않는다.

UniCast (TCP) : 1:1로 연결이 되는 일반 통화

 

# Socket

- 각 운영체제마다 Network Library (통신라이브러리)를 가지고 있어서, 서로 주고 받을 수 있다.

- 통신기능을 가지고 있는 모듈이 전부 있는데, 각 언어도 언어마다 socket이 있다.

- socket은 쉽게 쓰라고 만들어놓은 도구이다.

- socket은 데이터를 보내고, 받는데 도움을 준다.

 

 

- 네트워크 만들어서 ip를 받아서 소켓에 접속하는 예시

- 먼저 server 소켓을 만들어서 7000번이라는 포트로 받아준다.

- while을 무한 반복문으로 돌려서, 지속적으로 요청을 받아준다.

- client는 Socket타입을 사용해, 아이피를 적어서 해당 포트로 연결해준다.

- child는 server.accept를 사용해서, client가 접속할 수 있는 환경을 만들어 준다.

 

반응형

'java(2)↗' 카테고리의 다른 글

java 요약노트(2)  (0) 2024.05.13
VO와 DTO와 DAO  (0) 2024.05.12
java IO패키지  (0) 2024.05.09
java 이클립스 템플릿 Template  (0) 2024.05.08
java 람다식(+다형성 추가 설명)  (0) 2024.05.08