资源简介
用JAVA模拟的CSMA/CD过程,计算机网络大作业,其中节点设置可变更,这里面是设置两个节点。
代码片段和文件信息
/*
* To change this template choose Tools | Templates
* and open the template in the editor.
*/
package network;
import java.awt.*;
import java.awt.event.*;
import java.lang.*;
import javax.swing.*;
class NetWork extends Jframe{
public static int numNode;//numNode是节点的个数,i用于记录节点下标,使下面cn对象数组可以记录节点位置
private JTextField node=new JTextField(10);//创建文本域
protected JButton jbr=new JButton(“->“);//创建按钮
JPanel jp=new JPanel();//创建一个面板
// NetWork jp2;//演示图窗口
public NetWork(){//第一个面板的内容
jp.setLayout(new BorderLayout(1510));
jp.add(new JLabel(“请输入节点个数:“) BorderLayout.WEST);//创建标签将标签加入面板中
jp.add(nodeBorderLayout.EAST);//将文本域加入面板中
node.setHorizontalAlignment(JTextField.RIGHT);
numNode=2;
add(jpBorderLayout.NORTH);
jp.add(jbrBorderLayout.SOUTH);//将按钮‘-〉’加入面板中
node.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
numNode=Integer.parseInt(node.getText());//将在node文本域中的字符串转换成整数并存在numNode
node.requestFocusInWindow();
}
});
jbr.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
jp.removeAll();
jp.repaint();
jp.validate();
jp=new CreateNode(0);
} //若按下‘->‘则转换到创建节点面板中
});
}
public class CreateNode extends JPanel{//创建节点面板
String name;
double delayTimeframeTimea;//延迟时间,最短帧时间,冲突窗口
int RnumResendframeLengthj;//随机数R,重发次数初始化为1,最短帧长度
JButton colideNOcolidego;
N jp2;
public CreateNode(int iint m){
add(new Picture(im));
}
public CreateNode(){}
JTextField[] ne=new JTextField[numNode];
JTextField[] length=new JTextField[numNode];
CreateNode[] createN=new CreateNode[numNode];
int t;
public CreateNode(int i){
t=0;numResend=1;
jp.setLayout(new GridLayout(41011));
for(;t {
createN[t]=new CreateNode();
jp.add(new JLabel(“请输节点名:“));//输入节点的情况
ne[t]=new JTextField(10);
jp.add(ne[t]);
length[t]=new JTextField(10);
jp.add(new JLabel(“最小帧长度:“));
jp.add(length[t]);
//除以10Mbps算出节点的发送最短帧时间(单位:us)
createN[t].R=(int)(1+Math.random()*100);//随机为每个节点送一个地址值
createN[t].delayTime=0;//初始化延迟时间和重发次数
createN[t].a=51.2;//初始化重发次数和冲突窗口
}
switch(numNode)
评论
共有 条评论