JAVA

16장- 네트워킹 21. 02. 16.

Levinni 2021. 2. 17. 01:12

1. 네트워킹(Networking)

 

1.1 클라이언트/서버(client/server)

 

서버기반 모델(server-based model) P2P 모델(peer-to peer model)
- 안정적인 서비스 제공이 가능함.
- 공유 데이터의 관리와 보안이 용이함.
- 서버구축비용과 관리비용이 듦.
- 서버구축 및 운용비용을 절감할 수 있음.
- 자원의 활용을 극대화할 수 있음.
- 자원의 관리가 어려움.
- 보안이 취약함.

 

1.2 IP주소

 

1.3 InetAddress

- 자바에서 IP주소를 다루기 위한 클래스.

 

package chap16;

import java.net.InetAddress;
import java.util.Arrays;

public class NetworkEx1 {
	public static void main(String[] args) throws Exception {
		InetAddress ip = InetAddress.getByName("levinni.site");
		System.out.println(ip.getHostName());
		System.out.println(ip.getHostAddress());
		System.out.println(ip);
		
		byte[] ipAddr = ip.getAddress();
		System.out.println(Arrays.toString(ipAddr));
		
		for(byte b : ipAddr) {
			System.out.print((b <0 ? b+256:b )+ ",");
		}
		System.out.println("-----------");
		ip = InetAddress.getLocalHost();
		System.out.println(ip.getHostName());
		System.out.println(ip.getHostAddress());
		System.out.println(ip);
		
		InetAddress[] inetAddresses = InetAddress.getAllByName("www.naver.com");
		Arrays.asList(inetAddresses).forEach(System.out::println);
		// 로드밸런싱
		
	}
}

NetworkEx1.java

 

 

 

1.4 URL(Uniform Resource Locator)

- '프로토콜://호스트명:포트번호/경로명/파일명?쿼리스트링#참조'

- 포트번호, 쿼리, 참조는 생략할 수 있음.