Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSE 552 Network Management Course Project Fault Detection Project Yasser Alsawy 240328.

Similar presentations


Presentation on theme: "CSE 552 Network Management Course Project Fault Detection Project Yasser Alsawy 240328."— Presentation transcript:

1 CSE 552 Network Management Course Project Fault Detection Project Yasser Alsawy 240328

2 Fault Detection Project GoalStructure Processes Description DemoProblems Future Work Conclusion

3 Structure NMS SNMP v1 Manager for fault detection process Web Server IBM Websphere Application Server v5 Web Client IE v6 or higher Agent SNMP v1 enabled agent HTTP request/response JMX SNMP v1 request/trap JDBC Insertion/Retrieval MDB Z/OS 1.4 DB2 UDB 7.1.1

4 J2EE Model MVC Programming model Model View Controller is an OO J2EE programming model Model View Controller is an OO J2EE programming model Standard Standard Easy for maintenance Easy for maintenance Upgradeable Upgradeable The development team is able to share the resources and works in parallel way in development, maintenance and upgrading The development team is able to share the resources and works in parallel way in development, maintenance and upgrading

5 Processes Description Polling specified IP for getting the System group objects Listening & Receiving a trap from the agent if it is running SNMP service Storing SysUpTime and Trap timestamp at DB for the responding Agent name Retrieving the previous record for this Agent name Comparing the two records to check out failures at a specific period

6 Inside Java Code Pollingl_SNMPVarBindList.addVarBind("1.3.6.1.2.1.1.1.0");l_SNMPVarBindList.addVarBind("1.3.6.1.2.1.1.2.0");l_SNMPVarBindList.addVarBind("1.3.6.1.2.1.1.3.0");l_SNMPVarBindList.addVarBind("1.3.6.1.2.1.1.4.0");l_SNMPVarBindList.addVarBind("1.3.6.1.2.1.1.5.0");l_SNMPVarBindList.addVarBind("1.3.6.1.2.1.1.6.0");l_SNMPVarBindList.addVarBind("1.3.6.1.2.1.1.7.0"); l_SNMPRequest = l_SNMPSession.snmpGetRequest( null, l_SNMPSession.snmpGetRequest( null, l_SNMPVarBindList ); l_SNMPVarBindList ); boolean completed = l_SNMPRequest.waitForCompletion( p_lWaiting );

7 Inside Java Code Listening l_SnmpEventReportDispatcher = new SnmpEventReportDispatcher( 162 ); l_SnmpEventReportDispatcher.addTrapListener( new TrapListenerImpl(new TextArea()) ); new Thread(l_SnmpEventReportDispatcher).start(); Receiving l_vSystemObjects = new Vector(7); for( int j=0; j < 7; j++ ) {l_vSystemObjects.add( ((SnmpVarBind)l_SNMPVarBindList.elementAt(j)).getStringValue() ); ((SnmpVarBind)l_SNMPVarBindList.elementAt(j)).getStringValue() );}

8 Inside Java Code Retrieving StringBuffer l_szQuery = new StringBuffer("select * "); l_szQuery.append("from "); l_szQuery.append("TTCSE552.CSE_552_TB "); l_szQuery.append("where NAME = ? order by TRAP_TIME desc"); PreparedStatement l_pstmtQuery = p_DBConnection.prepareStatement(l_szQuery.toString()); l_pstmtQuery.clearParameters(); l_pstmtQuery.setString( 1, p_szName ); ResultSet l_rsQueryResult = l_pstmtQuery.executeQuery(); if ( l_rsQueryResult.next() ) { l_LastPolling = new LastPolling(); l_LastPolling.setName ( l_rsQueryResult.getString ("NAME")); l_LastPolling.setTrapTime( l_rsQueryResult.getTimestamp("TRAP_TIME")); l_LastPolling.setUpTime ( l_rsQueryResult.getInt ("UP_TIME")); }l_rsQueryResult.close();l_pstmtQuery.close();

9 Inside Java Code Storing StringBuffer l_szInsert = new StringBuffer("insert into "); l_szInsert.append("TTCSE552.CSE_552_TB "); l_szInsert.append("(NAME, TRAP_TIME, UP_TIME) "); l_szInsert.append("values (?, ?, ?)"); PreparedStatement l_pstmtInsert = p_DBConnection.prepareStatement(l_szInsert.toString()); l_pstmtInsert.clearParameters(); l_pstmtInsert.setString ( 1, p_szName ); l_pstmtInsert.setTimestamp( 2, p_dtTrapTime ); l_pstmtInsert.setInt ( 3, p_nUpTime ); if (l_pstmtInsert.executeUpdate() > 0) { l_nErrorCode = 1; }l_pstmtInsert.close();

10 Inside Java Code Detection int l_nUpTimeDif = p_nUpTime - p_nDBUpTime; long l_lTrapTimeDif = p_dtTrapTime.getTime() - p_dtDBTrapTime.getTime(); int l_nTrapTimeModulated = (int)l_lTrapTimeDif/1000; String l_szMessage = null; int l_nDif = l_nTrapTimeModulated - l_nUpTimeDif; if( l_nDif < 120 ) l_szMessage = "No failure since the last polling"; else l_szMessage = "A failure has occurred from less than " + l_nDif + " seconds"; return l_szMessage;

11 Problems Firewall Windows XP update Firewall Windows SNMP Trap Service

12 Future Work AuthenticationBroadcasting Detect Firewalls Other types of faults


Download ppt "CSE 552 Network Management Course Project Fault Detection Project Yasser Alsawy 240328."

Similar presentations


Ads by Google